ホームページ > 記事 > ウェブフロントエンド > JS 配列から重複を削除する最速のアルゴリズム
今回は、JS配列を重複排除するための最速のアルゴリズムと、JS配列を重複排除するための注意事項を紹介します。実際のケースを見てみましょう。
JS では、配列 から重複データを削除する必要があることがよくあります。ここでは、JS 配列の重複を排除する機能を実現する 4 つのアルゴリズムを紹介します。
1. 最速のアルゴリズム: オブジェクトキーと値のペアメソッド
実装アイデア:新しい js オブジェクトと新しい配列を作成します。受信した配列を走査するときに、値が js オブジェクトのキーであるかどうかを判断し、そうでない場合は、 キーをオブジェクトに追加し、それを新しい配列に置きます。 。 りー 実行結果:
2. 最も独創的なアルゴリズム: 最適化重複することなく右端の値を取得し、それを新しい配列に入れます。 (重複値が検出された場合、現在のループを終了し、次の先頭ループの判定に移ります)
//注意点: 判断 是否为js对象键时,会自动对传入的键执行“toString()”,不同的键可能会被误认为一样;例如: a[1]、a["1"] 。解决上述问题还是得调用“indexOf”。 //速度最快, 占空间最多(空间换时间) function unique(array){ var n = {}, r = [], len = array.length, val, type; for (var i = 0; i <strong> 実行結果: </strong> <p style="text-align: left;"></p><p style="text-align: left;"> <img src="http://img./attachment/art/151545/1049c0807f.jpg?2017101711520" alt="JS 配列から重複を削除する最速のアルゴリズム"></p>3. アルゴリズム: ソートされた隣接除去メソッド<p style="max-width:90%"><span style="font-size:medium;"><strong></strong> </span>実装アイデア: </p>受信<p style="text-align: left;">配列<strong>をソートします。ソート後、同じ値が隣接し、トラバースするときに、新しい配列は前の値と重複しない値のみを追加します。 </strong>りー<a href="http://www.php.cn/code/54.html" target="_blank"> 実行結果: </a></p> <p style="text-align: left;"></p><p style="text-align: left;"> <img src="http://img./attachment/art/151545/d37e2cf87e.jpg?2017101711734" alt="JS 配列から重複を削除する最速のアルゴリズム"></p>4. アルゴリズム:配列添字判定法<p style="max-width:90%"><span style="font-size:medium;"><strong></strong> </span>実装アイデア: </p> 現在の配列内の i 番目の項目の最初の出現が現在の配列内の i ではない場合、それは i 番目の項目が重複していることを意味し、無視されます。それ以外の場合は、結果の配列を保存します<p style="text-align: left;"></p><pre class="brush:php;toolbar:false">function unique1(array){ var r = []; for(var i = 0, l = array.length; i<l var console.log><strong> この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、PHP 中国語 Web サイトの他の関連記事に注目してください。 </strong>推奨読書: <p></p> <p>配列内の重複項目を削除する JS メソッド</p> <p><a href="http://www.php.cn/js-tutorial-392720.html" target="_blank"></a><br>ブートストラップのレスポンシブ ナビゲーション バー テンプレートの使用方法</p> <p><a href="http://www.php.cn/js-tutorial-392713.html" target="_blank"></a><br>vue.js メソッドで配列データを操作する</p> <p><a href="http://www.php.cn/js-tutorial-392700.html" target="_blank"></a> <br></p></l>
以上がJS 配列から重複を削除する最速のアルゴリズムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。