JS的高级知识点
作者:互联网
知识点
1、undeclared 与 undefined 的区别?
- undefined:声明了变量,但是没有赋值
- undeclared:没有声明变量就直接使用
var a; //undefined
b; // b is not defined
2、let & const与 var 的区别?
- var存在变量提升,可重复声明同一变量,声明的变量均可改
- let没有变量提升,不可重复声明同一变量,声明的变量均可改
- const没有变量提升,不可重复声明同一变量,声明的基本数据类型不可改,引用类型可改属性,不可只声明变量而不赋值
3、暂时性死区问题
var a = 100;
if(1){
a = 10;
//在当前块作用域中存在a使用let/const声明的情况下,给a赋值10时,只会在当前作用域找变量a,
// 而这时,还未到声明时候,所以控制台Error:Cannot access 'a' before initialization
let a = 1;
}
标签:知识点,const,变量,高级,JS,let,可改,var,声明 来源: https://www.cnblogs.com/ministep/p/15852640.html