为什么我的forloop + if / else控制台记录了未定义的值

时间:2018-11-13 19:18:06

标签: javascript for-loop undefined

给出以下可行的代码,并打印出red的所有颜色,为什么在交互结束时也打印出undefined的值?

var cars只是一大堆具有各种属性的汽车对象。

function queryCars(){

  // Your code here
   for (var i = 0; i < cars.length; i++ ){
      if(cars[i].color == "Red") {
        console.log(cars[i].make + " " + cars[i].model)
      }
   }

}

结果:

queryCars();
"Audi A5"
"Audi TT"
"BMW 3"
"BMW X5"
"Hyundai Elantra"
"Acura TLX"
undefined

1 个答案:

答案 0 :(得分:1)

undefined并非来自console.log。这是函数的返回值,因为函数不返回任何东西。

例如,在repl.it中:

let a
let b
console.log(a + " " + b)

打印:

undefined undefined
=> undefined

如果console.log是该循环的一部分,则不是undefines会打印出2 ;