ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript配列から重複を削除する方法
JavaScript 配列から重複値を削除する方法: 1. 「indexOf()」メソッドを使用して重複値を削除します; 2. splice メソッドを使用して重複値を削除します; 3. 新しいセット Set を使用しますes6 で重複した値を削除します。
この記事の動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
js 配列内の重複値を削除するいくつかの方法
日々の開発では、配列内の重複値を削除する場面に遭遇することがあります。 、私が学んだいくつかの方法を共有します
配列から重複する値を削除する方法:
1、indexOf() メソッドを使用して
アイデア:新しい配列を作成し、複製する配列をループし、新しい配列を使用して複製する配列の値を見つけます。値が見つからない場合は、.push を使用して新しい配列に追加します。最後に新しい配列を返します。
理解できなくても問題ありません。コードを読んだ後のほうが理解しやすいです。
#function fun(arr){ let newsArr = []; for (let i = 0; i < arr.length; i++) { if(newsArr.indexOf(arr[i]) === -1){ newsArr.push(arr[i]); } } return newsArr; }
2、splice メソッドを使用します。
アイデアを削除する: このメソッドはバブリングをいくらか模倣しています。ループの 2 つの層、外側のループは配列を横断し、内側のループは値を比較します。それらが同じ場合は、splice を使用してそれらを削除し、処理された結果を返します。 array.
わからなくても大丈夫ですコードのほうが理解しやすいです
function fun(arr){ for (let i = 0; i < arr.length; i++) { for(let j = i+1; j < arr.length; j++){ if(arr[i]==arr[j]){ arr.splice(j,1); j--; } } } return arr; }
3.es6の新しいセットを使いますセットの削除
こちらSet コレクションの簡単な紹介です。配列にはよく知られていますが、これは配列ではなくコレクションです。その中には、追加 (add)、削除 (delete)、チェック (has) などの多くのメソッドもあります。
その最も重要な機能は次のとおりです。要素は繰り返すことができません。つまり、同じ要素は Set コレクションに表示されません。
Set 重複排除ソリューション 1:
アイデア: なぜならSet コレクションでは重複値は許可されないため、この機能を使用して配列を渡して重複を削除できます。
最初に新しい Set を作成し、重複排除された配列をパラメーターとして渡してから、新しい配列とループ コレクションを走査し、各コレクション要素を新しい配列に追加し、最後に新しい配列を返します。
function fun(arr){ let s1 = new Set(arr); let arr2 = []; for(let item of s1){ arr2.push(item); } return arr2; }
重複排除ソリューション 2 を設定します (配列メソッド Array.form() を使用します):
アイデア: Array.from(); は、疑似配列とコレクションを配列型に変換できます。Set コレクションと組み合わせたこのメソッドは、まさにニーズを満たします。
[推奨される学習: JavaScript 上級チュートリアル ]
function fun(arr){ let s1 = new Set(arr); return Array.from(s1); }
重複排除ソリューション 3 の設定 (es6 拡張演算子を使用...):
アイデア: es6 拡張演算子は配列をカンマ区切りのパラメーター シーケンスに変換できます
function fun(arr){ let s1 = new Set(arr); return [...s1]; }
以上がJavaScript配列から重複を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。