概述
const命令:
作用:声明一个常量,一旦声明,常量的值就不能改变。
其实和Java中的final很相似。
第一个特点:
作用域和let一样,只有在声明所在的块级作用域中有效。并且是要在声明后的位置才能使用。
第二个特点:
和Java中final一样,对于变量来说不能改变的不是值,而是该变量的内存地址的指向,也就是引用不能改变。
也就是说对复合类型的数据,const只能保证该变量指向的内存地址,保存的这个指向实际数据的指针不能改变。
而至于这个指针所指向的数据是可以改变的。
复合类型的数据主要就是对象和数组这些,而简单类型的数据就类似于常量,没什么好说的。
第三个特点:
ES5声明变量只有两种:var、function。
ES6有6种:var、function、let、const、import、class。
在ES5有一个败笔:
顶层对象的属性与全局变量挂钩了:全局变量可能是顶层对象的属性创造的,而属性的创造是动态的。
window.a = 1;
a // 1
a = 2;
window.a // 2
window对象有实体含义,指的是浏览器的窗口对象,顶层对象是一个有实体含义的对象,所以不适合。
ES6的改变:对于var和function依旧是顶层对象的属性,而let、const、class命令声明的全局变量,不属于顶层对象的属性。
var a = 1;
// 如果在 Node 的 REPL 环境,可以写成 global.a
// 或者采用通用方法,写成 this.a
window.a // 1
let b = 1;
window.b // undefined
最后
以上就是时尚龙猫为你收集整理的【es6】ECMAScript6语法:const命令的全部内容,希望文章能够帮你解决【es6】ECMAScript6语法:const命令所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复