Le premier type :
Copiez le code comme suit :
fonction unique (arr){
var obj = {},newArr = [];
pour(var i = 0;i < arr.length;i++){
valeur var = arr[i];
si(!obj[valeur]){
obj[valeur] = 1;
newArr.push(valeur);
}
}
retourner newArr ;
}
Cette méthode stocke la valeur du tableau dans l'objet, donc lorsque le tableau existe en tant que membre d'objet, l'opération échoue (l'objet en tant que clé de l'objet sera converti en chaîne).
Deuxième méthode :
Copiez le code comme suit :
fonction unique (arr){
pour(var i = 0;i < arr.length;i++){
pour(var j = i+1;j < arr.length;j++){
si(arr[i] === arr[j]){
arr.splice(j,1);
j--}
}
}
retour arr;
}
Même si le tableau entrant contient des objets, cette méthode est prise en charge, notez '===', mais en utilisant des boucles imbriquées, les performances seront moins bonnes que la première méthode.