我有一个javascript(es2015)类,我想更新$ .each调用的函数中数组的值。但是,在构建中,myarr是未定义的。我假设this
在each
函数中,是引用传递给each
的匿名函数。如何访问myarr
的类实例?
class mycl{
constructor(){
this.myarr=[];
}
build(d){
$.each(d,function(d,i){
let myd = ..... // Do some stuff with the data
this.myarr.push(myd);
});
}
}
最佳答案
您将需要在变量中保留对类的引用,如下所示:
class mycl{
constructor(){
this.myarr=[];
}
build(d){
const self = this; //keep a reference to the class here and use it to access class attributes.
$.each(d,function(d,i){
let myd = ..... // Do some stuff with the data
self.myarr.push(myd);
});
}
}
关于javascript - 您如何访问匿名函数内部的javascript类属性是同一类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45087474/