【发布时间】:2011-03-26 21:29:42
【问题描述】:
我有一个关联的对象数组,我想用许多函数进行扩展。
myCtrls //Array of objects
我用下面的循环来做这个
$(文档).ready(函数() { for (在 fieldCtrls 中的 ctrlName){ var ctrl = fieldCtrls[ctrlName]; ctrl.Initialize = 函数(){ //做一些事情 ctrl.someProperty = "newValue"; } ctrl.Validate=函数(){ //做更多的事情 ctrl.someProperty = "验证成功"; } }稍后,我执行一个这样的函数。然而,变量“ctrl”现在总是指向“fieldCtrls”中的最后一个对象。如何使变量 'ctrl' 在 'initialize()' 和 'Validate()' 中工作?
fieldCtrls['id'].Validate();【问题讨论】:
标签: javascript scope closures