![](/img/trans.png)
[英]How do i access the objects inside the array returned by a javascript function
[英]How do I access an array that is called from inside a function outside of an object in JavaScript
我正在使用ES 6,並且有一個分配給這樣的對象的數組。
let myArray = [];
在對象的更下方,我將一個函數分配給了這樣的處理程序。
myFunction: doSomething
現在,在對象外部定義函數。
const doSomething = function(arg){}
所以我的問題是,當我嘗試向該外部函數內部的數組分配某些內容時,JavaScript不知道那是什么。
我不知道如何訪問對象內部的此全局數組。 因此,當我為該數組分配一個值時,會出現錯誤。
class myObject {
var myArray = [],
myFunction: doSomething,
}
const doSomething = function(arg) {
let selected = $.map(this.select(), (item) => {
this.myArray[this.dataItem(item).Id] = true;
});
}
您為class myObject
內容無效的語法。
您不能在這樣的類聲明中聲明諸如var myArray = []
類的變量。 同樣, myFunction: doSomething,
也不正確。 請在MDN上查看正確的ES6 class
語法。
如果要初始化對象的屬性,則可以使用this.myArray = []
在構造函數中進行this.myArray = []
,然后可以在任何方法內訪問this.myArray
。 這是一些有效的語法:
class myObject {
constructor() {
this.myArray = [];
}
myFunction(arg) {
let selected = $.map(this.select(), (item) => {
this.myArray[this.dataItem(item).Id] = true;
});
}
}
然后,將其用作:
var x = new myObject();
x.myFunction();
我還注意到方法myFunction
假定還有其他方法dataItem()
和select()
因此您也必須定義這些方法,此代碼才能工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.