JS——作用域
Posted 雨落川下雪
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS——作用域相关的知识,希望对你有一定的参考价值。
var v = "hello"; function f() { alert(v); var v = "byebye"; //函数作用域内的变量v【遮盖】了上层作用域变量v } /* function f() { var v;//声明提升 alert(v);//此函数与上述等价 v="byebye"; } */ f();//undefined alert(v);//hello
var v = "hello"; if (true) { alert(v);//hello var v = "byebye"; } alert(v);//byebye
两点注意事项:
1.JS的变量声明具有hoisting(提升)机制,javascript引擎在执行的时候,会把所有变量的声明都提升到当前作用域的最前面。
2.JS是没有块级作用域的。函数是JavaScript中唯一拥有自身作用域的结构。
以上是关于JS——作用域的主要内容,如果未能解决你的问题,请参考以下文章