gpt4 book ai didi

javascript - 如何使用 Angular.js/Javascript 检查数组中是否存在 key

转载 作者:行者123 更新时间:2023-11-28 18:34:05 24 4
gpt4 key购买 nike

我需要帮助。我有一个包含 json 数据的数组。我需要使用 Javascript/Angular.js 检查该数组中是否存在任何给定的键。我将在下面解释一个数组。

var arr = [{
'category': 1,
'subcategory': 2,
'check': true
}, {
'category': 1,
'subcategory': 2
}];

您可以在上面检查 1 索引,没有 check 键。我需要检查该键,以便可以获取 check:truecheck 根本不存在。请帮助我。

最佳答案

您可以使用some() hasOwnProperty()

some() executes the callback function once for each element present in the array until it finds one where callback returns a truthy value (a value that becomes true when converted to a Boolean). If such an element is found, some() immediately returns true. Otherwise, some() returns false. callback is invoked only for indexes of the array which have assigned values; it is not invoked for indexes which have been deleted or which have never been assigned values. (Taken from here)

var arr = [{
'category': 1,
'subcategory': 2,
'check': true
}, {
'category': 1,
'subcategory': 2
}];

var key='check';

var res = arr.some(function(v) {
return v.hasOwnProperty(key);
});

console.log(res);

<小时/>

对于旧版浏览器 check polyfill option of some method .

<小时/>

如果您想获取值或具有该属性的对象,请使用 find() 相反

var arr = [{
'category': 1,
'subcategory': 2,
'check': true
}, {
'category': 1,
'subcategory': 2
}];

var key = 'check';

var res = arr.find(function(v) {
return v.hasOwnProperty(key);
});

console.log(res);

<小时/>

对于较旧的浏览器,请检查 polyfill option of find method .

<小时/>

或者使用简单的 for 循环

var arr = [{
'category': 1,
'subcategory': 2,
'check': true
}, {
'category': 1,
'subcategory': 2
}];
var chk = 0;

for (var i = 0; i < arr.length; i++) {
if (arr[i].check == true) {
chk = 1;
break;
}
}

console.log(chk);

关于javascript - 如何使用 Angular.js/Javascript 检查数组中是否存在 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37457835/

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