如果这对你来说是一个愚蠢的问题,请忽略。我刚刚提出了自己的问题解决方案,但我知道它不是一个好的解决方案,并且有更好的方法可以做到这一点,请回答是否有其他解决方案只使用JavaScript。通过对象数组迭代的不同方法javascript?
它要求创建一个函数来遍历一个对象数组,并且如果firstName匹配该配置文件,则返回该对象的prop。如果firstName或prop提供给未找到的函数,则返回一些语句。
var contacts = [
{
"firstName": "Sherlock",
"lastName": "Holmes",
"number": "0487345643",
"likes": ["Intruiging Cases", "Violin"]
},
{
"firstName": "Akira",
"lastName": "Laine",
"number": "0543236543",
"likes": ["Pizza", "Coding", "Brownie Points"]
},
{
"firstName": "Harry",
"lastName": "Potter",
"number": "0994372684",
"likes": ["Hogwarts", "Magic", "Hagrid"]
},
{
"firstName": "Kristian",
"lastName": "Vos",
"number": "unknown",
"likes": ["Javascript", "Gaming", "Foxes"]
},
];
function lookUp(firstName, prop){
for (var i = 0; i < contacts.length; i++){
var n = parseInt(contacts.length);
if (contacts[i].firstName === firstName) {
if (contacts[i].hasOwnProperty(prop)){
return contacts[i][prop];
}
else return "No such property";
}
else if (i === (n-1)) {
return "No such contact";
}
}
}
console.log(lookUp("Sherlock", "likes"));
你被允许使用库? –
看Array.filter https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/filter –
没有库,只是普通的javascript – Leorczhu