var movies =
[ 
  {
    title: "Shawshank",
    rating: 5,
    hasWatched: true
  },
  {
    title: "Boardwalk empire",
    rating: 5,
    hasWatched: true
  },
  {
    title: "bladerunner",
    rating: "unkown",
    hasWatched: false
  },
  {
    title: "Ratatouille",
    rating: 4,
    hasWatched: true
  }
]
for(var i = 0; i <movies.length; i++)
{
if(movies[i].hasWatched)
  {
      console.log("You have seen " + movies[i].title + " - " + 
  movies[i].rating);
  }
else (movies[i].hasWatched !== true)
  {
      console.log("You have not seen " + movies[i].title + " - " + 
  movies[i].rating);
  }
}当我将else-if更改为else时,它将生成以下输出:
为什么在这种情况下,代码似乎会失败呢?
我特别感兴趣的是为什么bladerunner只输出一个。唯一明显的区别是,评级属性是"string“而不是"number”。
最好的
https://stackoverflow.com/questions/47242296
复制相似问题