gpt4 book ai didi

javascript - 当这不是我们想要的时,JS 访问对象属性

转载 作者:行者123 更新时间:2023-11-28 00:12:49 25 4
gpt4 key购买 nike

我知道我的主题标题不清楚,所以这里有一个简短的代码来解释:

function SomeFunction() {
var objPointer = this;
this.someProp = null;
this.someSingleton = null;
this.someCallerToMethodWithCallback = function(){
this.someSingletone = new someLibObj(arg1,arg2,...);
this.someSingletone.someMethodWithCallback(arg1,arg2,...,this.someCallback);
};
this.someCallback = function(param1){
this.someProp // inaccessible due to "this" is referring to someLibObj
objPointer.someProp // accesible
};
}

如您所见,我定义了对象,其中包含 someSingleton - someLibObj 的实例,然后我调用 someMethodWithCallback,其中回调函数在我的对象中,但是在这个回调函数中“this”不是引用我的对象,而是引用对象,它调用了该回调。

我很好奇: 有没有比将“this”存储在另一个子变量中更简单的方法来访问我的对象?

最佳答案

我认为将 this.someSingletone.someMethodWithCallback... 行中的 this.someCallback 替换为 this.someCallback.bind(this)应该做。

关于javascript - 当这不是我们想要的时,JS 访问对象属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30742317/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com