【ES6总结】

let const 总结

let const 不会污染全局变量 不会声明到window上
let a=1;
console.log(window.a)//undefind
复制代码
let const 不存在变量提高 (他所声明的变量必定要在声明后使用,不然报错)
a=1;
let a=2;//报错
复制代码
let const 不容许在用一个做用域中重复声明同一个变量
let b=1;
let b=2;//报错
复制代码
块级做用域 ES5中没有块级做用域,只有全局做用域和函数做用域
{
    let a =1
    console.log(a)
}
    /* 在两个做用域中声明的 因此不会报错 */
{
    let a=2;
    console.log(a)
}
复制代码
let 定义的变量值 是能够被改变的
let a =1; 
a=2 ;
console.log(a)
复制代码
const声明的一个常量是 值是不能够改变的(地址不变便可),可是若是存储的是一个地址 指向对象,能够改变对象里的内容
const num=1;
num=2;//报错   不能够修改
console.log(num)
const obj ={a:1}
//obj=[];//报错
obj.a=2
console.log(obj)
复制代码
若是真的想将对象冻结,应该使用 Object.freeze方法
const foo = Object.freeze({});
//常规模式下,下面一行不起做用
//严格模式下,改行会报错
foo.prop = 123; 
复制代码

未完待续bash

相关文章
相关标签/搜索