【发布时间】:2011-01-25 17:44:41
【问题描述】:
我有 n 个数组,我需要确定 x 是否在所有 n 个数组中。 (其中 n 是任意数字,而 x 是数值)我有类似以下的内容,但它总是以 false 结尾。
function filterArrays()
{
var x = $(this).attr('id'); // ex: 2
var arrays = [[1,2,3],[2,4,6]];
var result = false;
for each (var n in arrays)
{
result = result ^ (n.indexOf(x) > -1);
}
}
当x 在两个数组中时,我如何使result 等于true,但当x 不在两个数组中时,使result 等于false?
上面的函数将与 jQuery 的 filter() 方法一起使用。示例:
$(arrayOfElementsWithNumericIds).filter(arrayFilter);
// arrayOfElementsWithNumericIds prototype: [div#1,div#2,div#3,...]
我认为需要按位运算,但我可能错了。请解释为什么您的解决方案是正确的以及为什么我的解决方案不起作用。 (积分)
【问题讨论】:
标签: javascript jquery arrays