我有一个这样的 ES7 代码。
async function returnsfive() {
var three = 3;
var threeP = await three;
return threeP+2;
}
returnsfive().then(k=>console.log(k), e=>console.error("err", e))
线上应该发生什么var threeP = await three
?
代码应该按预期继续,还是失败,因为three
不是承诺?
在这个 repo中,它被称为“有争议的语法和语义”。我无法通读官方文档以找到确切的定义,因为它太技术性了。
默认 babel.js 转换按预期记录 5;但是,nodent
- 一个不同的变换 - 打印TypeError: three.then is not a function
。哪个是正确的,为什么?