刚开始使用js的时候,感觉这语言好简单。使用起来非常快。但是当我问自己,js的精华,特性在哪里,只是不需要定义类型,
不需要自己管理内存嘛。刚开始对js的理解仅限于此。
一直理解的是,JS是一个解释性语言,代码一行行解析下去,忽然有时候发现一个写法,让我对此产生了怀疑,在百度之后终于
知道了为什么。在这里我简要记录下。
count(1,2); function count(a,b) { console.log(a + b); }
结果是正常的。
var test = "aaa"; function func() { console.log(test); var test = "bbb"; }
结果是undifined
js变量声明提升机制的妙处。这篇文章写得很清楚了。
http://openwares.net/js/javascript_declaration_hoisting.html
原文:http://www.cnblogs.com/ao1shib123/p/3952646.html