ES6中的常量const关键字

const 关键字

  1.声明后的值不可以修改:

const  name = "小康哥";
name = "小康";    //  报错,const为constant的缩写,表示常量,即不可改变的量 

  2.const关键字只在块级作用域起作用;

var  flag = true;

if(flag) {
    const num = '5211';
}    
alert(num);    //  报错,在作用域外,未定义num

  3.不存在变量提升,必须先声明后使用;

if(true){
    alert(xk);    //  报错,不存在变量提升,未提前声明
    const xk = 'xiaokang';
}   

var car = 'BMW';
const car = 'QQ';    //  报错,错误原因:声明了一个已经存在的变量 car

  4.不可重复声明同一个变量,声明后必须赋值;

const hello;     //  错误,只声明未赋值
const hi = 'xiaokangge';

  5.const常量可以是一个对象类型

const obj = {
     "name":"xiaokang"  
}
obj.name = "康哥";
obj.age = 18;
//  打印 obj 对象
console.log(obj);    // {name:"康哥",age:18}

  ♦ 传值赋值:在赋值过程中,变量实际上存储的是数据的地址(对数据的引用),而不是原始数据或者数据的拷贝。

//  模拟传址赋值
var zhangsan = {
    "car":"black"    
};

var lisi = zhangsan;

lisi.car = "red";
console.log(zhangsan); // {car:"red"} console.log(lisi); // {car:"red"}

  总结:const关键字用于声明一个常量,且声明时必须赋值,声明后不可修改;同let关键字一样,也只是在块级作用域中起作用,不可以重复声明同一个变量,也不会发生变量提升;声明引用类型的常量时,需要注意的是,此时是传址(地址的引用)赋值。

猜你喜欢

转载自www.cnblogs.com/zxk5211/p/9259475.html