请问,我这个代码为何报错了?
来源:2-10 编程练习
铁蛋金刚侠
2021-03-03 13:44:36
相关代码:
/*补充代码*/
let x = 10
let y = 20
let z = 30
[x, y, z] = [z, x, y];
console.log(x, y, z);
1回答
同学你好,报错信息为:“语法错误,在初始化之前无法访问‘z‘”

原因:let为块级作用域,由于代码中使用let声明变量后面没有加分号,编辑器解析的时候无法判断在哪里结束,就导致解析错误,建议给let声明变量后面加上分号(给z加上就可以不报错了,但是为了规范一些建议每个变量后面都加上分号),就不会报错了,如下图:

祝学习愉快!
相似问题