JS学习二
函数作用域和声明提前
var scope = ‘global‘;
function f()
{
console.info(scope); //输出undefined
var scope = ‘local‘;
console.info(scope); //输出 local
}
上述代码等价于
function f()
{
var scope;
console.info(scope);
scope = ‘local‘;
console.info(scope);
}
将函数内的变量声明“提前”至函数体顶部(但不涉及赋值),同时变量初始化留在原来的位置
该特性被非正式的成为“声明提前”,在函数内声明的所有变量在函数体内始终是可见的!
2. 作用域链
每一段js代码都有一个与之关联的作用域,这个作用域是一个对象列表或链表!这组对象定义了这段代码“作用域中”的变量!
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。