由于我现在写js基本不会加分号,今天写的时候发现在chrome(版本 54.0.2840.71 m)里使用ES6解构赋值时会有一个小问题.
代码如下
let lastX = 0,
lastY = 0
canvas.addEventListener('mousedown', (e) => {
isDrawing = true
[lastX, lastY] = [e.offsetX,e.offsetY]
})
赋值语句前没有分号会赋值失败,报错
Uncaught TypeError: Cannot set property '0' of undefined(…)
加了之后就没问题了,希望大家注意,不知道其他浏览器是否有这个问题
这个跟解构有毛关系,你运行下面的代码看看会不会报错
所以 ; 这个东西不是不让大家加,而是不加之前先弄清楚到底哪些情况是必须要加的