使用循环语句查找通讯录
//Setup
var contacts = [
{
"firstName": "Akira",
"lastName": "Laine",
"number": "0543236543",
"likes": ["Pizza", "Coding", "Brownie Points"]
},
{
"firstName": "Harry",
"lastName": "Potter",
"number": "0994372684",
"likes": ["Hogwarts", "Magic", "Hagrid"]
},
{
"firstName": "Sherlock",
"lastName": "Holmes",
"number": "0487345643",
"likes": ["Intriguing Cases", "Violin"]
},
{
"firstName": "Kristian",
"lastName": "Vos",
"number": "unknown",
"likes": ["Javascript", "Gaming", "Foxes"]
}
]; function lookUpProfile(firstName, prop){ var hasName = false;
//设置标量hasName,作为firstName判定的结果
for (var i = 0; i < contacts.length; i++) {
if (contacts[i].firstName == firstName) {
hasName = true;
if (contacts[i].hasOwnProperty(prop)) {
return contacts[i][prop];
} else {
return "No such property";
}
}
} if(!hasName){
//等循环执行完之后再对是否有firstName的判定结果进行处理,避免影响prop属性的判定过程
return "No such contact";
} } lookUpProfile("Akira", "likes");