摘要: 其实对于Javascript链式作用域的描述,包括,JS权威指南,都有些太冗长了--但是很准确:JavaScript中的函数运行在他们被定义的作用域里,而不是他们被执行的作用域里。这句话有点难懂,但程序的设计,基本都是为了简单,便于理解的。记住JS中经典的一句话是,一切皆对象。说白了链式作用域,其实就是Javascript的一个特性:子函数中可以访问父函数的所有变量。当然也包括全局变量window(一般的函数定义function a(){},其实都是window对象的子函数)。另外补充一下,函数定义有两种方式,其实略有差别:var a=function(){}和function a(){},稍 阅读全文
posted @ 2013-09-26 17:06 piuba 阅读(668) 评论(0) 推荐(0) 编辑
摘要: 这里实际上是匿名函数function(arg){...}这就定义了一个匿名函数,参数为arg而调用函数 时,是在函数后面写上括号和实参的,由于操作符的优先级,函数本身也需要用括号,即:(function(arg){...})(param)这 就相当于定义了一个参数为arg的匿名函数,并且将param作为参数来调用这个匿名函数而(function($){...}) (jQuery)则是一样的,之所以只在形参使用$,是为了不与其他库冲突,所以实参用jQuery********************************************************************** 阅读全文
posted @ 2013-09-26 12:01 piuba 阅读(326) 评论(1) 推荐(0) 编辑