【JavaScript】var、let、const之间的区别和使用

1.var

  • var 可重复声明变量
  • var 可用于块级
  • var 可变量提升

第一个输出a执行顺序 相当于 var a; console.log(a); a= 'apple'; 这样输出结果声明变量a,但是未赋值,所以结果就是 underfined

第二个输出a 声明又赋值 所以结果是 apple


2.let

  • let  不可重复声明变量
  • let  不可用于块级
  • let  不存在变量提升 

 3.const【JavaScript】var、let、const之间的区别和使用_第1张图片【JavaScript】var、let、const之间的区别和使用_第2张图片【JavaScript】var、let、const之间的区别和使用_第3张图片

  •  const  声明之后必须要赋值,否则会报错
const  c = '51800';

console.log(c)  //51800


const d;  // SyntaxError: Missing initializer in const declaration 

          // 语法错误: const 声明中没有初始划
  • const  常量意思,如果已经定义了,在修改这个常量就会报错
const c = 220
c = 330  //Uncaught TypeError: Assignment to constant variable. 
         //为抓取的 错误类型: 分配给的常量 变化了
console.log(c)


const aa = {
    a:456,
    b:789,
    c:123
}
aa.c = 4562456
aa.k =1234789
console.log(aa.k)  //1234789
//const只是保存了一个指向实际数据的指针,对于复杂对象类型
//(对象 object,数组 array,函数 function)数据结构变不变,const并无法控制
  • 函数里面若使用了 const 和 let ,全局变量在里面就无法使用
var PI = "a";
if(true){
  console.log(PI);  // ReferenceError: PI is not defined,就算在外面的是let,都报错
  const PI = "3.1415926";
}

 

你可能感兴趣的:(前端,javascript)