一个for循环在条件判断前可以包含多少个变量?
JavaScript中for循环初始化部分能声明多少个变量?
在JavaScript的for循环里,初始化部分(第一个分号前的内容)没有官方硬性数量限制——只要用逗号分隔,就能声明任意多个变量,前提是变量的声明语法合法。
比如你贴的这段代码:
for (let i = 0, j = n - 1; i < n; i++, j-- ) { leftToRightArr.push(arr[i][i]); rightToLeftArr.push(arr[i][j]); };
这里就同时声明并初始化了i和j两个变量,完全符合语法规范。
不过实际开发里不建议声明太多变量,因为会让代码臃肿、难读。如果确实需要多个变量控制循环,最好考虑逻辑拆分,或者把相关变量打包成对象/数组,保证代码的可维护性。
另外要注意:如果用let在初始化部分声明变量,这些变量的作用域仅限于for循环的代码块内;如果用var的话,变量会被提升到外层作用域,这一点在使用时要区分清楚。
内容的提问来源于stack exchange,提问作者Daniel Benisti
相关产品推荐
相关产品推荐

