blob: a5981cfb3e4497c3201eb2b009a54545ab0febc7 [file] [log] [blame]
Tests that evaluation with top-level await may be performed in console.
await Promise.resolve(1)
1
{a:await Promise.resolve(1)}
{a: 1}
$_
{a: 1}
let {a,b} = await Promise.resolve({a: 1, b:2}), f = 5;
undefined
a
1
b
2
let c = await Promise.resolve(2)
undefined
c
2
let d;
undefined
d
undefined
let [i,{abc:{k}}] = [0,{abc:{k:1}}];
undefined
i
0
k
1
var l = await Promise.resolve(2);
undefined
l
2
foo(await koo());
4
$_
4
const m = foo(await koo());
undefined
m
4
const n = foo(await
koo());
undefined
n
4
`status: ${(await Promise.resolve({status:200})).status}`
"status: 200"
for (let i = 0; i < 2; ++i) await i
undefined
for (let i = 0; i < 2; ++i) { await i }
undefined
await 0
0
await 0;function foo(){}
undefined
foo
ƒ foo(){}
class Foo{}; await 1;
1
Foo
class Foo{}
await 0;function* gen(){}
undefined
for (var i = 0; i < 10; ++i) { await i; }
undefined
i
10
for (let j = 0; j < 5; ++j) { await j; }
undefined
j
VM:1 Uncaught ReferenceError: j is not defined
at <anonymous>:1:1
(anonymous) @ VM:1
gen
ƒ* gen(){}
await 5; return 42;
VM:1 Uncaught SyntaxError: await is only valid in async function
let o = await 1, p
undefined
p
undefined
let q = 1, s = await 2
undefined
s
2
await {...{foo: 42}}
{foo: 42}