JavaScript 配列の重複排除 は比較的一般的な要件であり、多くの解決策があります
アイデア:
配列を走査し、1 つずつ比較し、同じものを削除します
配列、1つずつ比較、同じものを比較、前の重複をスキップし、異なるものを新しい配列に入れます
任意の配列要素を選択して新しい配列に入れ、残りの配列要素を走査し、いずれかを選択しますを取得し、それを新しい配列の要素と結合します。それらを 1 つずつ比較し、相違がある場合は、新しい配列に入れます。
配列を走査し、要素を取得し、それをオブジェクトの属性として使用し、その属性が存在するかどうかを判断します
1. 重複するものを削除します:
function ov(arr){ //var a=((new Date).getTime()) for(var i=;i<arr.length;i++) for(var j=i+;j<arr.length;j++) if(arr[i]===arr[j]){arr.splice(j,);j--;} //console.info((new Date).getTime()-a) return arr.sort(function(a,b){return a-b}); }
2。 If if the Same, go out of theoop
function ov(a) { //var a=((new Date).getTime()) var b = [], n = a.length, i, j; for (i = ; i < n; i++) { for (j = i + ; j < n; j++) if (a[i] === a[j]){j=false;break;} if(j)b.push(a[i]); } //console.info((new Date).getTime()-a) return b.sort(function(a,b){return a-b}); }
3. ここで j ループが続いていますが、i の値が変更されています。これは、新しい i ループと同等です:
function ov(a) { //var a=((new Date).getTime()) var b = [], n = a.length, i, j; for (i = ; i < n; i++) { for (j = i + ; j < n; j++) if (a[i] === a[j])j=++i b.push(a[i]);} //console.info((new Date).getTime()-a) return b.sort(function(a,b){return a-b}); }
4. 新しい配列内のすべてが一意であることを確認します
function ov(ar){ //var a=((new Date).getTime()) var m=[],f; for(var i=;i<ar.length;i++){ f=true; for(var j=;j<m.length;j++) if(ar[i]===m[j]){f=false;break;}; if(f)m.push(ar[i])} //console.info((new Date).getTime()-a) return m.sort(function(a,b){return a-b}); }
5. オブジェクト属性を使用します
以上がJavaScript 配列から重複要素を削除するためのアイデアと実装コードの詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。