我有以下代码:
function listToArray(list) {
var array = [];
for(var node = list; node; node = node.rest) {
console.log(node.rest);
array.push(node.value);
}
return array;
}
例如:像[1, 2, 3]
这样的数组会以列表形式显示{ value: 1, rest: { value: 2, rest: { value: 3, rest: null }}}
。
函数中for循环的条件最终将导致null
。我的问题是,这有条件的工作如何?通常你会有一个布尔表达式,例如:i <= 10
。 AFAIK,null
并未评估为假值......那么有条件的工作如何?
答案 0 :(得分:1)
for循环中的条件是在每次迭代时计算的表达式。如果计算结果为true,则执行语句。自null,0等。被视为假,它不会执行。
来源: - https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Statements/for