-
let&count关键字
1.var 的缺点:
存在变量提升;同一作用域下可以重复声明;;不存在块级作用域,只存在全局作用域和局部函数作用域不可以限制修改,只能声明变量不能声明固定值的常量
(1)存在变量提升
console.log(a); //输出undefined,案例来说是先声明后后使用
var a = 1
(2)同一作用域下可以重复声明
var a = 1;
var a = 2;
console.log(a) //输出2,重复声明在java中会报错的
(3)不存在块级作用域,只存在全局作用域和局部函数作用域
if(false){
var a = 1}
console.log(a) //输出undefined相当于:var提升出来声明a,在if语句中给a赋值
(4)不可以限制修改,只能声明变量不能声明固定值的常量
2.let&count关键字
let声明变量的 ; const声明常量的
相同点:
(1)都不存在变量提升,必须先声明再使用
(2)同一作用域下都不可以重复声明
(3)都存在块级作用域
不同点:
(1)let可以多次赋值
(2)const一旦赋值了,就不能再次赋值了,声明的时候必须赋值
const d = 10 ; d = 20 //报错
const e ; e = 100 //报错
命名规范
(1)const 声明的常量一般采用大写字母配合下划线
const PI = Math.PI ; const VUE_BASE_URL = " http://xxx.com/api/cart "