JS的变量提升指的是代码在执行前会将变量提升到作用域的顶部,仅存在var声明变量中。 console.log(num + '件') // undefined var num = 10 只提升生命,不提升赋值。 上段代码类似于 var num; console.log(num + '件') num = 10; 在函数作用域中也同样遵循该规则。 注意 1、let/const声明的变量在未声明即被访问时会报语法错误。 2、变量在var声明之前即被访问,变量的值为undefined。 3、let/const声明的变量不存在变量提升。 4、变量提升出现在相同作用域中。 函数提升 // 1、会把所有函...