关于js变量声明的几种方式

1.var::1没有块的概念,可以跨块访问,不能跨函数访问;

             2.存在变量提升

2.let:1.let声明的的变量只在它所在的代码块有效;

           2.不存在变量提升。let不会像var那样发生“变量提升”,因此,变量需要先声明后使用,否则报错

           3.不允许重复声明。

3.const:  1.一旦声明就必须立即初始化;

                 2.一旦声明,常量值就不能改变(指堆内存中的地址不能改变)

                 3.其他和let一样

4.function():1.函数声明后不会立即执行,需要调用的时候才会执行;

                   2.对支持es5和es6浏览器环境在块作用域内有一定区别,所以应该避免在块作用域内声明函数。

5.class:  1.相比于对象原型的方式更清晰

               2.更像面向对象编程的语法

6.import:  1.import命令接收一对大括号,其里面的变量名必须与被导入模块对外接口的名称相同

                2.用as关键字可以将输入的变量名重命名

                3.import命令输入的变零都是只读的

                4.import命令具有提升效果,会提升到整个模块的头部,首先执行(因为Import命令是在编译阶段执行的,在代码运行之前)

               5.import是静态执行,不能使用表达式和变量

               6.import会执行所加载的模块

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值