如何使用變量的值在ES2015中設置類的屬性?在ES2015中設置`this。[variable value]`
考慮以下代碼:
class Test {
constructor() {
this.name = "";
this.url = "";
}
//Set the options for class
setOptions(options) {
for (option in options) {
this.option = options[option]; //Option 1
this[option] = options[option]; //Option 2
}
}
}
const test = new Test();
test.setOptions({name: 'Test', url: 'www.stackoverflow.com'});
我知道選項1是不應該工作,但看到雖然選項2也不起作用,我不知道我應該如何以編程方式設置類屬性。
爲了說清楚,我想在類中設置'name'和'url',而不是名爲option的屬性。
一旦你修復了'option'的變量聲明,它就可以正常工作。 https://jsfiddle.net/popyL5dq/你爲什麼認爲它不起作用?你得到什麼輸出? –
*不起作用*不起作用如何?看看控制檯。你很可能在變量'option'上看到'ReferenceError'。那應該會給你所有追蹤錯誤的線索。 –
這與ES2015無關。這是基本的JS。 –