关于var声明

函数内部

在函数内部,有var和没var声明的变量是不一样的。有var声明的是局部变量,没var的,声明的变量为全局变量
在全局上下文中,使用 var 声明的变量将作为全局对象的不可配置属性被添加。这意味着它的属性描述符无法被修改,也无法使用 delete 删除。其对应的名字也将被添加到 全局环境记录(global environment record)(它构成了全局词法环境 (global lexical environment) 的一部分)的 [[VarNames]] 插槽内的列表中。[[VarNames]] 中的命名列表使运行时能够区分“全局变量”和“全局对象的直接属性”。

全局

在全局作用域内声明变量时,使用var声明的变量,就是window的属性,无法被删除,没有var声明,自动变成全局变量的,是可以被删除的,使用delete

声明提升

无论在函数里面还是在函数外面,使用var关键字都可以让变量声明提前,不使用var关键字就不可以

posted @ 2022-09-26 09:40  DurianTRY  阅读(27)  评论(0编辑  收藏  举报