gpt4 book ai didi

javascript - 这个简单的 jQuery 对象比较并不比较

转载 作者:行者123 更新时间:2023-11-28 16:15:29 26 4
gpt4 key购买 nike

好奇我在这里做错了什么:

employee_ids = $('[data-employee_id="'+employee+'"]');
timestamp_ids = $('[data-scheduled_on="'+timestamp+'"]');

var common = $.grep(timestamp_ids, function(element) {
$.each(employee_ids, function(idx, item) {
if ( item === element ) { console.log ("omg!") };
});
});

这仅返回 timestamp_ids 列表,而不是与寻找单个匹配项的 employee_ids 进行比较的数组。

最佳答案

您没有使用.grep正确。 grep 的每次迭代都应返回一个 bool 值: true 将其添加到结果数组中, false 将忽略它。

var listA = [1, 2, 3];
var listB = [2, 3, 4];

var union = $.grep(listA, function (element) {
return listB.indexOf(element) !== -1;
});

请注意,IE 不支持数组上的 .indexOf,您必须以其他方式实现比较。

编辑:如果您尝试查找数组中符合某些条件的单个项目,我建议仅使用常规 for 循环:

var result;
for (var i = 0; i < yourArray.length; i++) {
if (yourArray[i].id === employee_ID) { // whatever conditions you have
result = yourArray[i];
break;
}
}

if (result) {
// do whatever
} else {
// no match
}

关于javascript - 这个简单的 jQuery 对象比较并不比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11584227/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com