今回はJSを使って配列から重複する項目を削除する方法をお届けします。 、一緒に見ていきましょう。
配列の重複排除には多くの方法があり、方法が異なれば効率も異なります。例えば、前回の記事では、JSで実装する配列重複排除アルゴリズムのまとめとして、4つの実装方法をまとめて分析しました。ここでは効率的な配列の重複排除方法、つまりJSオブジェクトの特性に基づいて配列内の重複項目を削除する方法を紹介します。
1. JSオブジェクトの特性(この記事で使用する特性): キーは常に一意です 例: オブジェクトのキー値の一意性について説明します。つまり、js で既存の
属性を再割り当てするとき、キーは実際には新しいキーを作成するのではなく上書きされますvar t={name:'张三',age:20};//定义个js对象
console.log(t.name);//控制台输出:张三
//注意:此时对象t有两个属性:name、age
t.name='李四';
console.log(t.name);//控制台输出:李四
//注意:此时对象t依然有两个属性:name、age
2. アレイの重複排除手順の分析 2つのステップに分かれています:
1. 重複排除された配列を js オブジェクトに変換して返します。
変換ルール: 配列の値を js オブジェクトのキーに変更し、その値を任意の値に代入します; 2. 手順 1 のオブジェクトを配列に復元し、オブジェクトのキーを配列の要素として使用します。
3. 配列重複排除の実装var arr=[1,2,3,4,5,23,4,2,4,3];
//1.把数组装换成对象,数组的元素作为对象的key,然后返回对象
function toObject(ac_array){
var obj={};//私有的对象
for (var i=0;i<ac_array.length;i++) {
obj[ac_array[i]] = true;
}
console.log(obj);//Object {1: true, 2: true, 3: true, 4: true, 5: true, 23: true}
return obj;
}
//2.把对象的key获取出来作为数组的元素,然后返回数组
function keys(ac_obj){
var arr = [];
for(var item in ac_obj){
if(ac_obj.hasOwnProperty(item)){
arr.push(item);
}
}
console.log(arr);//["1", "2", "3", "4", "5", "23"]
return arr;
}
//综合
function uniq(ac_array){
return keys(toObject(ac_array));
}
//测试
var uniq_array=uniq(arr);
console.log(uniq_array);//["1", "2", "3", "4", "5", "23"]
ブートストラップのレスポンシブ ナビゲーション バー テンプレートを使用する方法
以上が配列から重複した項目を削除する JS メソッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。