欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

js中var、let、const区别

程序员文章站 2022-07-28 22:55:02
//1.var定义的变量可以修改,如果不初始化会输出undefined,不会报错。 var a; console.log(a); //undefined //2.let是块级作用域,函数内部使用let定义后,对函数外部无影响。 let c = 3; console.log(c) function c... ......
//1.var定义的变量可以修改,如果不初始化会输出undefined,不会报错。
var a;
console.log(a); //undefined


//2.let是块级作用域,函数内部使用let定义后,对函数外部无影响。
let c = 3;
console.log(c)

function change(){
let c = 6;
console.log(c)
}
change();

(1)只要块级作用域于中存在let命令,它所声明的变量就绑定在这个区域中,不再受外部的影响。

var a = 10;
{
  console.log(a);   //undefined   (作用域内部变量不受外部影响,还有就是let不存在变量提升,所以才会报未定义)
  let a = 3;
  console.log(a);    //3
}

(2)let不允许在同一个作用域内,重复声明同一个变量
{
  var a = 2;
  let a  = 2;
  console.log(a)     // Error: Identifier 'a' has already been declared
}


//3.const定义的变量不可以修改,而且必须初始化。
//const b; //这样定义不对,必须赋值初始化
const b=1;