我有兩個數組是這樣的:找到重複的兩個數組
var x = ['1','2','6'];
var y = ['4', '5','6'];
如何找到在純JavaScript和我在兩個數組複製想避免使用循環?
輸出 - duplicates: 6
我有兩個數組是這樣的:找到重複的兩個數組
var x = ['1','2','6'];
var y = ['4', '5','6'];
如何找到在純JavaScript和我在兩個數組複製想避免使用循環?
輸出 - duplicates: 6
嘗試這樣:
var x = ['1','2','6'];
var y = ['4', '5','6'];
var overlap = x.filter(function(v,i,a){
return y.indexOf(v) > -1;
});
console.log(overlap); // ['6']
這是否工作,爲你的目的是什麼?
試試這個
var x = ['1','2','6'];
var y = ['4', '5','6'];
var duplicate = [];
for (var i=0; i<y.length; i++) {
var index = x.indexOf(y[i]);
if (index > -1) {
duplicate.push(x[index]);
}
}
Output: ["6"]
「我想避免使用循環」 –
@DavidBarker好吧。它是'O(array1.length * array2.length)',但對於相當小的陣列和現代硬件,這不應該遠程引起問題 –
是否需要是純JS或者您可以使用Underscore.js或jQuery的? –
嗨,純粹! @Jezzabeanz – sbaaaang
http://stackoverflow.com/questions/1885557/simplest-code-for-array-intersection-in-javascript – phts