Jonathan Beliën

Jonathan Beliën

Freelance Web Developer

« Spécialiste » en cartographie numérique
Membre du conseil d'administration d'OpenStreetMap Belgique
Membre du conseil d'administration d'Open Knowledge Belgique
Fan de LEGO et de bande-dessinées



JavaScript: in_array() en JavaScript

Publié le 30.06.2008

La fonction PHP in_array() étant ma foi fort pratique, je voulais la transposer en Javascript.

function inArray(array, p_val) {
    var l = array.length;
    for(var i = 0; i < l; i++) {
        if(array[i] === p_val) {
            return true;
        }
    }
    return false;
}

Transposer la fonction en Javascript est assez facile, mais je voulais ajouter cette fonction à l’objet Array et pouvoir faire

mon_tableau.inArray(ma_valeur);

Après quelques recherche avec mon ami Google, voici la fonction :

Array.prototype.inArray = function(p_val) {
    var l = this.length;
    for(var i = 0; i < l; i++) {
        if(this[i] === p_val) {
            return true;
        }
    }
    return false;
}

Une autre solution (proposée par bob dans les commentaires de la version précédente du site) qui semble plus simple:

Array.prototype.inArray = function(p_val) {
  return (this.indexOf(p_val) !== -1);
}