var,let,const的区别

  1. var:能重复声明
var a = 1;
var a = 2;
console.log(a);//这时控制台打印出来的是a=2;
var会前置到脚本的最前面,就会变成:
var a; 
var a;
a = 1;
a = 2;

2.let:有块级作用域,没有前置功能,不能重复声明

let a = 1;
let a = 2;
console.log(a);//这时控制台会报错;
let不会前置到脚本的最前面,同时它也不能重复声明;
let a = 1;
for(a == 1){
    let b = 2;
}
console.log(b);//这时控制台会出现报错;是因为let没有前置功能,所以找不到b;

3.const:有块级作用域,恒量(不可改变的),常量的名字大写,常量在声明的时候必须赋值,常量的值是引用数据类型;

const a = 1;
const a = 2;
console.log(a);//这时控制台会报错;
const b = 1;
b = 2;
console.log(b);//这时控制台打印的b是1;因为const的值不可改变;
const c;
c = 1;
console.log(c);//这时控制台会报错,因为常量在声明的时候就必须赋一个值;

这个就是var let const的区别,是不是特好记呢!

原文地址:https://www.cnblogs.com/STsongze/p/7149051.html