【发布时间】:2017-10-16 06:09:24
【问题描述】:
我有一个 JSON 对象数组imdb,我想检查一个键是否存在。我尝试了几种不同的方法,但都没有显示正确的结果。我查看了this post,但没有帮助。下面的代码
var imdb = [{"123":"hi"}, {"234":"hello"}]; //array of JSON object
var valEventTime = 123; //key I want to find if exists
//approach 1
function getValueByKey(key, data) {
var i, len = data.length;
for (i = 0; i < len; i++) {
if (data[i] && data[i].hasOwnProperty(key)) {
return data[i][key];
}
}
return -1;
}
if(getValueByKey(valEventTime, imdb) > -1){
console.log("Yes");
}
else {
console.log("NOT")
}
//approach 2
if (imdb[valEventTime]) {
console.log("Yes");
} else {
console.log("NOT")
}
//approach 3
var keys=Object.keys(imdb)
for(var i=0;i<keys.length;i++){
if(keys[i]==valEventTime)
{//check your key here
console.log("Yes")
}
else console.log("NOT")
}
即使我正在搜索已经存在的密钥 (123),输出也始终显示 NOT。请建议。
【问题讨论】:
-
能否更新问题中的 json 数据?
-
@Chandru 不确定您的意思?我已经有了 JSON 数据 var imdb = [{"123":"hi"}, {"234":"hello"}];
标签: javascript arrays json node.js