首先我写了这样的事情:访问内联(JS)的await-ed值?
(async function() {
const value = await Promise.resolve({a: 3}).a
console.log(value)
})().catch(console.error);
但我很快就得出结论,这是不会工作的,因为我们要在等待什么Promise.resolve
回报a
属性,这是不确定的。
于是,我就换我await
呼叫到括号:
(async function() {
const value = await(Promise.resolve({a: 3})).a
console.log(value)
})().catch(console.error);
这也不能工作。 (它记录undefined
)
所以它似乎提取a
道具的唯一办法是做这样的事情:
(async function() {
const resolvedValue = await Promise.resolve({a: 3});
let aProp = resolvedValue['a'];
})().catch(console.error);
,这增加了代码的不必要的线。
我喂这样有点失败异步的目的/等待。这是正确的还是我错过了什么?
我在节点和chrome中运行代码,都显示“SyntaxError:意外的标识符”? – Denly
@Denly https://stackoverflow.com/q/42225480/3853934 –