【发布时间】:2021-11-05 09:47:05
【问题描述】:
为什么这样的事情不会起作用,甚至会引发错误?
const arr = [...Array(5).keys()];
const first = i = 0, second = i < 5, third = i++
for (first; second; third) {
console.log(arr[i])
}
预期结果:
【问题讨论】:
-
因为变量存储的是值,而不是表达式。
-
不,因为
first、second和third不包含原始表达式;它们包含在您分配它们时这些表达式的评估结果。 -
second = i < 5评估为 值,根据 i 被分配的那一刻为真或假,它确实不创建了跟踪 i 的变化值。
标签: javascript loops for-loop console iteration