let、var区别点
1.let只在命令所在的代码块中有效。
2.变量一定要先声明在使用,否则会报错,不存在Es5的变量提升(暂时性死区,不存在重复使用)。
3.块级作用域中存在let命令,所声明的变量就不受外界影响。
const
1.一旦声明常量其值不会变,只声明不赋值则会报错
2.对于复合型变量,变量名不指向数据,指向的是数据的地址,只保证地址不变,并不能保证数据不变,所以声明一个对象,对象依然可以为其添加属性。对于这种情况,可以采用
const foo = object.freeze({});
foo.prop = 123;这个赋值变得不可用了
跨域模块常量:
export const A = 1
或者 import { A,B } from './contants'