最初のタイプ:
次のようにコードをコピーします。
固有の関数 (arr){
var obj = {},newArr = [];
for(var i = 0;i < arr.length;i++){
var 値 = arr[i];
if(!obj[値]){
obj[値] = 1;
newArr.push(値);
}
}
newArr を返します。
}
このメソッドは配列の値をオブジェクトに格納するため、配列がオブジェクトのメンバーとして存在する場合、操作は失敗します(オブジェクトのキーであるオブジェクトは文字列に変換されます)。
2 番目の方法:
次のようにコードをコピーします。
固有の関数 (arr){
for(var i = 0;i < arr.length;i++){
for(var j = i+1;j < arr.length;j++){
if(arr[i] === arr[j]){
arr.splice(j,1);
j--}
}
}
arrを返します。
}
受信配列にオブジェクトが含まれている場合でも、このメソッドはサポートされます ('===' に注意してください)。ただし、ネストされたループを使用すると、最初のメソッドよりもパフォーマンスが低下します。