请问,我这个代码为何报错了?

来源: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回答

好帮手慕张

2021-03-03

同学你好,报错信息为:“语法错误,在初始化之前无法访问‘z‘”

http://img.mukewang.com/climg/603f31f90969bc5906710071.jpg

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

http://img.mukewang.com/climg/603f320c09568d0202630258.jpg

祝学习愉快!

1
hustnzj
hp>我也是这样写的,不规范掉坑了。。。

h021-03-07
共1条回复

0 学习 · 15276 问题

查看课程