嵌套的If语句,for循环,否则在Javascript中排序(FreeCodeCamp - lookUpProfile)

时间:2016-05-03 02:35:12

标签: javascript if-statement for-loop

我目前正在开发免费代码营的Javascript教程,并且我被困在“联系人资料”problem上。我的一些if以及它们如何嵌套/订购存在问题。我的代码如下。

具体来说,任何人都可以解释如何在for循环中有两个嵌套的if语句时嵌套“else if”语句吗?看来代码需要先完成迭代,但我不能得到我的语法或订购正确。

function lookUpProfile(firstName, prop){
// Only change code below this line
for(var i = 0; i < contacts.length; i++){
  if(contacts[i].firstName === firstName){
    if(contacts[i].hasOwnProperty(prop)){
     }
  return contacts[i][prop];

}
else if (contacts[i][firstName] !== firstName){
        return "No such contact";
}
  else if (contacts[i].hasOwnProperty(prop) === undefined){
    return "No such property";
  }
}

1 个答案:

答案 0 :(得分:0)

所以正确的代码如下,我遇到了第一个if语句的问题,而不是使用我使用的点符号&#34; contacts [i] [firstName] === firstName&#34;我认为这导致它没有正确评估第一个if语句。

如果有人能澄清为什么会这样,那就太好了!

for(i=0; i < contacts.length; i++){
  if(contacts[i].firstName === firstName){
    if(contacts[i][prop]){
      return contacts[i][prop];
    }
    else{
      return "No such property";
    } 
  }
}
  return "No such contact";