我正在寻找一种方法将属性从“this”注入到本地函数作用域中,所以我不需要编写“this”。当引用这个属性时。Javascript:将上下文属性传递到函数范围
具体细节显示在此代码http://jsfiddle.net/wwVhu/3/,看这部分
...
//it's how it works
doStuff: function(param) { $('#output').html(this.value + param) }
//it's how i want it work - without referencing to this
//doStuff: function(param) { $('#output').html(value + param) }
我知道它可以通过包装的功能代码实现“与(这){...}”,但什么是其他选择?
在每个方法的开头或使用js aop写“with(this)”是我试图避免的。
通常情况下,我会说只是在'fields'定义之外添加'value',所以它的作用范围是匿名函数(基本上它变成了一个“私有”变量)。但是,它会要求您为变量编写访问器方法。但我不确定你想用你的框架实现什么,所以我只是把它作为一个建议来添加它。 – NilsH 2013-04-23 12:11:53