cont
作者:互联网
一、基础
const 声明一个只读的常量,一旦声明,常量的值就不会改变
const PI = 3.1415; PI // 3.1415 PI = 3; // TypeError: Assignment to constant variable.
const一旦声明变量,就必须立即初始化
const的作用域与let命令相同:只在声明所在的块级作用域内有效
const也不会变量提升,存在暂时性死区,只能在声明位置后使用。不可重复声明
上面代码中,常量foo
指向一个冻结的对象,所以添加新属性不起作用,严格模式时还会报错。
除了将对象本身冻结,对象的属性也应该冻结。下面是一个将对象彻底冻结的函数。
var constantize = (obj) => { Object.freeze(obj); Object.keys(obj).forEach( (key, i) => { if ( typeof obj[key] === 'object' ) { constantize( obj[key] ); } }); };
另:
Object.keys
返回一个所有元素为字符串的数组,其元素来自于从给定的object
上面可直接枚举的属性。这些属性的顺序与手动遍历该对象属性时的一致。
二、ES6声明变量的六种方法
var function let const import class
标签:const,Object,obj,cont,PI,声明,属性 来源: https://www.cnblogs.com/joliezz/p/16088024.html