uassualy

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

1 js 作用域跟C,java等语言的不同的地方:

1) 没有块级作用域

   注意,若局部作用域var 了一个跟全局作用域相同变量名的变量,则局部作用域里面无法引用全局作用域的变量。

2) 局部作用域变量可以与全局作用域变量同名,但是前面要加var,注意,此后2者一点关系都没有,可以看作是一山不可容的二虎,两只老虎两只老虎。

2 变量解析

  JS 变量解析涉及其词法分析的东西,具体的架构(自己的理解)如下:

                   执行环境

                      ↑

         作用域链(2种,全局和全局局部)

                      ↑

         局部作用域和全局作用域

                      ↑

                   变 量

3 定义为HTML属性的事件句柄具有更加复杂的作用域链。他们的作用域链的头是调用对象,传递给事件句柄的所有参数都在这里定义,而且其下一个对象不是全局对象而是触发事件句柄的对象 。关于事件句柄作用域的完整讨论只适用于定义为HTML属性的事件句柄。

 

后续时间具体阐述补全。

望资深前辈发现错误立马指明,我可修改,以避免延误别人也延误自己。

 

posted on 2015-10-12 13:30  uassualy  阅读(165)  评论(0)    收藏  举报