我尝试过类似的事情:
var diff = $(array1).not(array2).get();
console.log(diff); // store the difference
将.not()
替换为.is()
,但这不起作用..它产生错误。它只存储差异,但我只希望存储在新数组中的相同值。我怎么在jQuery中做到这一点,不管它是否在两个数组中都是长度大小?
var array1 = ['a','b','c','d','e','f','g'];
var array2 = ['c', 'b'];
var sameValArr = [];
// TODO:
// 1. compare the two arrays if there's any matching values in both
// 2. if yes, store the matching value in a new array; if no, do nothing
// 3. check the new array if it isn't empty
// 4. if empty, hide the video; if not empty do nothing (show video)
for(var i = 0; i < array1.length; i++)
{
for(var j = 0; j < array2.length; j++)
{
if(array1.indexOf([i]) === array2.indexOf([j]))
{
sameValArr.push(array1[i]);
console.log("sameValArr: ", sameValArr);
}
}
}
使用indexOf()
方法为此问题提供的答案无效。
答案 0 :(得分:0)
for(var i=0; i< array1.length; i++)
{
for(var j=0; j< array2.length; j++)
{
if(array1[i] === array2[j])
sameValArr.push(array1[i]);
}
{