JSで配列中の重複要素を除去する方法

1616 ワード

JSで配列中の重複要素を除去する方法
第一の方法:配列中のsplice方法を使用する.
splice():要素を削除し、配列に新しい要素を追加し、削除された要素を返します.
function f1(){
        var _arr=[8,5,0,3,1,8,5,0,3,1,8,8,8,5,2,2,2];
        for(n=0;n<_arr.length-1 for="" i="" if="" _arr.splice="" console.log="" f1=""/>
第二の方法:indexOfを使用する()
indexOf():指定されたサブ文字列値が文字列で最初に発生する位置を検出します.
この方法は簡単ですが、低いバージョンのブラウザはindexOf()の互換性がないかもしれません.
indexOf()メソッドが検索する文字列が現れない場合は-1を返します.
function f2(){
            var _arr=[8,5,0,3,1,8,5,0,3,1,8,8,8,5,2,2,2];
            var _empty=[];//       
            for(n=0;n<_arr.length if="" _empty.push="" _arr="_empty;//   _arr   _empty,       _empty" console.log="" f2=""/>
第三の方法:第二の書き方に対応する.
function f3(){
       var _arr=[8,5,0,3,1,8,5,0,3,1,8,8,8,5,2,2,2];
       var _empty=[];
       var _flag=0;//           ,    0
        for(n=0; n<_arr.length n="" for="" i="" if="" _flag="1;//  _arr  n    _empty        ,    _flag   1" break="" _empty.push="" _arr="_empty;// _empty   _arr,       _empty" console.log="" f3=""/>
第四の方法:字面量の対象を使う:字面量の対象の中の鍵を利用するのは唯一の特性です.
function f4(){
       var _arr=[8,5,0,3,1,8,5,0,3,1,8,8,8,5,2,2,2]; 
       var _obj={};//         
            for(n=0;n<_arr.length _obj="" var="" _temp="[];//       " for="" k="" in="" _temp.push="" console.log="" f4=""/>