变量声明var、let、const

《JavaScript高级程序设计》学习

var

1、作用域

(1)变量声明在自定义函数内部

变量在函数内部声明,则该变量为函数内的局部变量

(2)变量声明在自定义函数外部

变量直接声明在全局,则为全局变量;

变量在函数内部定义时,省略var操作符,创建的是全局变量

var声明的全局变量会成为window的属性

2、声明提升

var进行变量声明,会自动将声明提升至对应作用域的开头

可以反复声明同一个变量

3、for循环

for(var i=0;i<3;++i){}

console.log(i) //3

let

1、作用域

let的作用域为块级作用域

 可以理解为,let声明的变量作用域仅在包含它的最小{}内部

与var不同,let在全局作用域中声明的变量不会成为window的属性

2、暂时性死区

let声明的变量不存在变量提升,因此在变量声明之前访问会报错

3、for循环

for(let i=0;i<3;++i){}

console.log(i) //ReferenceError

const

1、作用域

块级作用域

2、不允许重复声明

3、常量

声明时必须同时初始化

const声明的为常量,是只读的,只能在声明的时候赋值,后续不能修改

使用顺序:const>let   不使用var

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值