【发布时间】:2021-10-30 09:09:06
【问题描述】:
我在试验 JS,开玩笑地尝试重新定义 let 关键字,结果出乎意料地成功了。
它不适用于任何其他关键字,例如 while、const、var 等。
为什么 JS 可以正常工作?
let = 'Weird'
console.log(let)
console.log(typeof let)
console.log(let.length)
let = ['Weird','Very Weird']
console.log(let)
console.log(typeof let)
console.log(let.length)
let = 80
console.log(let)
console.log(typeof let)
console.log(let/80)
还有一件奇怪的事情:
var let = 'Even More Weird'
console.log(let)
let = 50
console.log(let)
let = (x)=>x**2
console.log(let(3))
【问题讨论】:
-
这在strict mode 中不起作用。试试
(function() { "use strict"; let = 8;})。在草率模式(非严格默认值)下,这只是对名为let的变量的变量赋值。
标签: javascript keyword let