ホームページ  >  記事  >  ウェブフロントエンド  >  js配列の重複排除方法のまとめ

js配列の重複排除方法のまとめ

一个新手
一个新手オリジナル
2017-09-21 09:51:101974ブラウズ


方法 1:

最初に配列を並べ替えた後、要素を前の要素と比較し、同じものを削除します。この方法では、sort() メソッドとスライス() を使用します

var arr = [&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;d&#39;, &#39;e&#39;, &#39;f&#39;, &#39;g&#39;, &#39;h&#39;, &#39;j&#39;, &#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;d&#39;, &#39;e&#39;, &#39;f&#39;, &#39;g&#39;, &#39;h&#39;, &#39;j&#39;];//对数组先进行排序arr.sort();            for(var i = 0; i < arr.length; i++) {                //用当前的元素与他的前一个元素进行对比
                if(arr[i] == arr[i - 1]) {                    //如果相同的话,就删除掉第i个元素
                    arr.splice(i, 1);
                }
            }
            console.log(arr);

方法 2 :

配列を走査し、新しい配列を定義し、indexOf を使用して新しい配列に存在するかどうかを判断し、存在しない場合は新しい配列にプッシュし、最後に新しい配列を返します

var arr = [&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;d&#39;, &#39;e&#39;, &#39;f&#39;, &#39;g&#39;, &#39;h&#39;, &#39;j&#39;, &#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;d&#39;, &#39;e&#39;, &#39;f&#39;, &#39;g&#39;, &#39;h&#39;, &#39;j&#39;];function delArr(array){
                var newArr=[];//新建一个新数组
                //遍历参数数组array
                for(var i=0;i<array.length;i++){                    //判断新数组是否有这个元素值,没有的话,就把arr[i]给push到新数组newArr中
                    if(newArr.indexOf(array[i])===-1){
                        newArr.push(arr[i]);
                    }
                }                return newArr;
            }
            console.log(delArr(arr));

方法 3:

使用オブジェクトのキーと値のペアのメソッド: 新しい js オブジェクトと新しい配列を作成します。受信した配列を走査するときに、値が js オブジェクトのキーであるかどうかを判断します。そうでない場合は、キーをオブジェクトに追加して、新しいアレイ。

注: それが JS オブジェクト キーであるかどうかを判断するとき、受信キーに対して「toString()」が自動的に実行されます。たとえば、a[1]、a["1" などです。 ]。上記の問題を解決するには、やはり「indexOf」を呼び出す必要があります。

りー

以上がjs配列の重複排除方法のまとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:Node.JS関連の知識次の記事:Node.JS関連の知識