標題重寫為:"(ES6)類別 (ES2017)非同步/等待的getter方法"
P粉564192131
2023-08-22 22:10:47
<p>是否可能或將來可能透過ES2017的await / async函數從ES6類別的getter傳回一個值。 </p>
<pre class="brush:php;toolbar:false;">class Foo {
async get bar() {
var result = await someAsyncOperation();
return result;
}
}
function someAsyncOperation() {
return new Promise(function(resolve) {
setTimeout(function() {
resolve('baz');
}, 1000);
});
}
var foo = new Foo();
foo.bar.should.equal('baz');</pre>
<p><br /></p>
更新:正如其他人指出的那樣,這並不真正起作用。 @kuboon在下面提供了一個不錯的解決方法。
你可以這樣做
這與下面的程式碼是相同的