如何检查JavaScript数组中是否存在特定的键?
实际上,我正在检查键是否未定义来确定键是否存在。但是如果该键存在但值确实为undefined该怎么办?
var obj = { key: undefined }; obj["key"] != undefined // false,但是该键确实存在!
如何检查JavaScript数组中是否存在特定的键?
实际上,我正在检查键是否未定义来确定键是否存在。但是如果该键存在但值确实为undefined该怎么办?
var obj = { key: undefined }; obj["key"] != undefined // false,但是该键确实存在!
使用in
操作符。
0 in [10, 42] // true
2 in [10, 42] // false
'a' in { a: 'foo' } // true
'b' in { a: 'foo' } // false
let $arr = [1, 0, false];
console.log($arr.indexOf(0)); // 1
console.log($arr.indexOf(false)); // 2
console.log($arr.indexOf(15)); // -1
if ($arr.indexOf(18) !== -1) //Todo
You can use the Javascript array filter funtion. Like that:
const arr = ["ab","cd"]
const needle = "cd"
console.log( arr.filter(i => i == needle).length > 0 ? "exists" : "not exists" )
使用 hasOwnProperty(key)
for (let i = 0; i < array.length; i++) {
let a = obj[i].hasOwnProperty(`${key}`);
if(a){
console.log(obj[i])
}
}