javascript 作用域的问题

主要是一个函数作用域。。

 

在一个函数中要先申明各个变量,在使用这个变量,在不同的函数作用域中,变量名可以相同,如果在同一个函数作用域中,相同变量可以声明多次但只返回一个值。

 

不在函数作用域的称为全局作用域,全局作用域可以声明多个,但只能返回一个。注意没有局部变量。

 不过在ES6后就出现了块级作用域了

为了解决块级作用域,ES6引入了新的关键字let,用let替代var可以申明一个块级作用域的变量

 

function foo() {
    var sum = 0;
    for (let i=0; i<100; i++) {
        sum += i;
    }
    i += 1; // SyntaxError
}
跟java的局部作用域很相似。
posted @ 2017-04-17 18:07  秋分的季节  阅读(95)  评论(0编辑  收藏  举报