这该怎么做?
var obj = {
func1 : function(){
// Do stuff
},
func2 : function(){
func1(); // does not work
this.func1(); // does not work
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:错过了分号
小智 23
var obj = {
func1 : function(){
// Do stuff
},
func2 : function(){
obj.func1(); // It works fine
}
}
Run Code Online (Sandbox Code Playgroud)
如果你想使用'this'关键字,你应该做类似的事情
function obj() {
this.param = whatever;
}
obj.prototype.method1 = function(){
...
}
obj.prototype.method2 = function(){
this.method1();
}
Run Code Online (Sandbox Code Playgroud)
您可以在obj函数中声明方法,但最好使用原型,因为它更有效 - 无论您创建多少个obj实例,这些函数只存在一次.如果将函数放在obj构造函数中,则obj的每个实例都有自己的函数副本.javascript做了一些魔术来将方法调用与调用它的对象实例相关联,以确保'this'在上下文中意味着正确的事情
| 归档时间: |
|
| 查看次数: |
8107 次 |
| 最近记录: |