» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


发新话题
打印

[其他] 这种写法叫什么名称,JavaScript

function后面带括号把当前的变量给传进方法里,这个叫什么,外函数,还是啥?

this.num_input.onblur  = (function(v) {
                                return function(){
                                        v.numCheck();
                                }
                        })(this);

[ 本帖最后由 cc0128 于 2009-6-2 13:47 编辑 ]


TOP

谢谢ls,原来这个就是传说中的闭包~~

[ 本帖最后由 cc0128 于 2009-6-2 14:26 编辑 ]



TOP

var tmp = 233;
var tmp2 = (function(v) {
return function(){
return v
}
})(tmp);
这个传值的方式叫什么名称


TOP

引用:
原帖由 leonWong 于 2009-6-2 14:27 发表
什么叫闭包?
无知了,第一次这个词..........
闭包的“闭”是指闭包的内部环境对外部不可见,也就是说闭包具有控制外部域的能力但是又能防止外部

对闭包的反向控制,换句话说,闭包的领域是对外封闭的。这一特点是因为javascript闭包是通过function实现的

所以它天然具有基本的函数特征,在闭包内声明的变量,闭包外的任何环境都无法访问的,除非闭包向外部

环境提供了访问它们的接口。

TOP

引用:
原帖由 打击者 于 2009-6-2 23:32 发表
看看jquery的plugin
http://www.learningjquery.com/20 ... development-pattern

java居然还不支持闭包,还得用内部类来实现,反倒是c#用lambda表达式就经常用到它,很爽很方便
不过jquery我一直都用来获取下页面dom,偶尔做点小效果。。暴殄天物啊。。
写多了js。
现在看到java就烦,写得一点也不爽

TOP

引用:
原帖由 xu33 于 2009-6-3 15:24 发表


这个貌似是匿名函数的一种调用方法,目的是保护全局变量不被污染
貌似就是这个啦。mark

TOP

发新话题
     
官方公众号及微博