ES6笔记--块级作用域let

    在ES6之前,JavaScript中,我们通常说的作用域是函数作用域,使用var声明的变量,无论是在代码的哪个地方声明的,都会提升到当前作用域的最顶部,这种行为叫做变量提升,也就是说,如果在函数内部声明的变量,都会被提升到该函数开头,而在全局声明的变量,就会提升到全局作用域的顶部。它有利有弊,利于方便自由,弊于作用域内的变量容易被共享。

function test() {
    console.log('t: ', a) //undefined
    if (false) {
      var a = 2
    }
    console.log('s: ', a) //undefined
}

test()

注意这段代码是写在

你可能感兴趣的:(前端学习)