Appearance
查找联系人
本节目标:理解“查找联系人”的核心思路,并能把它用于实际开发或面试表达。 Profile Lookup 我们有一个对象数组,里面存储着通讯录。 函数 ==lookUp== 有两个预定义参数:==firstName==值和==prop==属性 。 函数将会检查通讯录中是否存在一个与传入的 ==firstName== 相同的联系人。如果存在,那么还需要检查对应的联系人中是否存在 ==prop==属性。 如果它们都存在,函数返回==prop==属性对应的值。 如果==firstName== 值不存在,返回 =="No such contact"==。 如果==prop== 属性不存在,返回 =="No such property"==。
=="Kristian", "lastName"== 应该返回 =="Vos"== =="Sherlock", "likes"== 应该返回 ==["Intriguing Cases", "Violin"]== =="Harry","likes"== 应该返回一个数组 =="Bob", "number"== 应该返回 "No such contact" =="Akira", "address"== 应该返回 "No such property"
//==初始化变量==
varcontacts=[
{
"firstName":"Akira",
"lastName":"Laine",
"number":"0543236543",
"likes":["Pizza","Coding","BrowniePoints"]
},
{
"firstName":"Harry",
"lastName":"Potter",
"number":"0994372684",
"likes":["Hogwarts","Magic","Hagrid"]
},
{
"firstName":"Sherlock",
"lastName":"Holmes",
"number":"0487345643",
"likes":["IntriguingCases","Violin"]
},
{
"firstName":"Kristian",
"lastName":"Vos",
"number":"unknown",
"likes":["Javascript","Gaming","Foxes"]
}
];functionlookUp(firstName,prop){
//==请把你的代码写在这条注释以下==
for(vari=0;i<contacts.length;i++){
if(contacts[i].firstName===firstName){
if(contacts[i][prop]){
returncontacts[i][prop];
}
return'Nosuchproperty';
}
}
return'Nosuchcontact';
//==请把你的代码写在这条注释以上== }
//==你可以修改这一行来测试你的代码==
lookUp("Akira","likes");