一,let 和 const

1,let声明变量,没有变量提升

console.log(a);
let a = 10;

2,是一个块作用域

console.log(b);
if(1===1){
  let b=10;  
}
console.log(b);
#都会报没定义

3,不能重复声明

let = 2
let = 3
console.log(a)

 

const (符合let前三条特性)

1,const 声明常量,一旦声明不能修改

const max =30;
max = 40;
console.log(max);

2,声明对象,可以修改对象里面的属性

const person={
    name:'haha'
}
person.name = 'hehe'
作用1:for循环不会提升变量(var 回提升变量)
const arr =[]
for (let i = 0;i<10;i++){
    arr[i]=function(){
        return i;
    }
}
console.log(arr[5]());
作用2,不会污染全局变量
let RegExp = 10;
console.log(RegExp)
console.log(window.RegExp)

建议:在默认情况下用const,而只有在你知道变量值需要被修改的情况使用let

 
 
 
 
 
 
 
posted @ 2022-07-25 20:55  阿U-root  阅读(36)  评论(0)    收藏  举报