我有示例 json 数组:
var jsonArray = '{"name":"Otabek","lastName":"Mansurov","age":"16"}';
我有示例功能:
function getError(jsonArray, arrayKeyFromJsonArray) {
var looping = $.parseJSON(jsonArray);
$.each(looping, function(key, value) {
if(key.toLowerCase() == arrayKeyFromJsonArray.toLowerCase()) {
console.log(key + '=' + value);
} else console.log("Sorry, I can't found key " + arrayKeyFromJsonArray + " from array!");
});
}
使用示例:
getError(jsonArray, 'age'); // Return: age = 16
是否可以在没有循环的情况下从数组中找到键?
示例新函数伪代码:
function getError(jsonArray, arrayKeyFromJsonArray) {
return jsonArray.arrayKeyFromJsonArray;
}
使用惰性样式是不可能的,因为键区分大小写。
您可以使用Array#find
并检查该值,如果不undefined
将其作为对象的键。
function getError(json, search) {
var object = JSON.parse(json),
key = Object.keys(object).find(k => k.toLowerCase() === search.toLowerCase());
return key !== undefined
? object[key]
: "Sorry, I can't find key " + search + " in array!"
}
var json = '{"name":"Otabek","lastName":"Mansurov","age":"16"}';
console.log(getError(json, 'age'));
console.log(getError(json, 'lastname'));
console.log(getError(json, 'foo'));
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句