一、JS代码执行以前 先把代码中带var 和带function的提早声明 var 只声明不定义 function 声明加定义 如果在大括号中的function 是只声明不定义的,只声明不定义 给他的默认值是undefinedcode
例如:console.log(a); var a=1
的输出结果就是undefinedcdn
二、 let const 暂时性死区 也就是在let前绝对不能调用对应的变量一调用就报错对象
例如:console.log(b);let b=2;
输出就会报错blog
三、变量提高只提高变量左边的部分 var 出来的变量会在window下增长一个对应的属性:window是全局大对象 let const声明出来的变量,不会在window中增长对应的属性; 栈内存:存储值类型,提供代码运行环境; 堆内存:存储引用数据类型内存
例如: it