首页 > 解决方案 > 学习 javaScript break 语句并坚持理解为什么迭代行为怪异

问题描述

学习break语句。我从正在学习的书中获得以下代码:

for (const x of ['a', 'b', 'c']) {
    console.log(x);
    if (x === 'b') break;
    console.log('---')
}
// Output:
// 'a'
// '---'
// 'b'

为什么'b'仍然打印?英文代码,打印['a','b','c']的每个元素x,如果元素x等于b就停止!然后打印'---'。如果我要求停止迭代,“b”从何而来?

标签: javascriptbreak

解决方案


这很简单。在第二行,您在中断第二次迭代之前记录 x 的值。


推荐阅读