Compilers/polyfills | Desktop browsers | Servers/runtimes | Mobile | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Feature name | Current browser | Traceur | Babel 6 + |
Babel 7 + |
Babel 7 + |
Closure 2020.09 | Closure 2021.08 | Closure 2021.09 | Closure 2021.10 | Closure 2021.11 | Closure 2022.05 | Closure 2022.07 | Closure 2023.02 | Type- Script + |
Type- Script + |
Type- Script + |
Type- Script + |
Type- Script + |
Type- Script + |
Type- Script + |
FF 115 ESR | FF 127 | FF 128 ESR | FF 129 | FF 130 | FF 131 | FF 132 | FF 133 | FF 134 | FF 135 | FF 136 | FF 137 | FF 138 | FF 139 | FF 140 | FF 141 | FF 142 | OP 12.10 | CH 126 | CH 127 | CH 128 | CH 129 | CH 130 | CH 131 | CH 132 | CH 133 | CH 134 | CH 135 | CH 136 | CH 137 | CH 138 | CH 139 | Edge 126 | Edge 127 | Edge 128 | Edge 129 | Edge 130 | Edge 131 | Edge 132 | Edge 133 | Edge 134 | Edge 135 | Edge 136 | Edge 137 | Edge 138 | SF 15.6 | SF 17.5 | SF 17.6 | SF 18 | SF 18.1 | SF 18.2 | SF 18.3 | SF 18.4 | SF 18.5 | SF TP | WK | OP 102 | OP 103 | OP 104 | OP 105 | OP 106 | OP 107 | OP 108 | OP 109 | OP 110 | OP 111 | OP 112 | Rhino 1.7.15 | Rhino 1.8.0 | PJS | Node >=18.3 <19 | Node >=20 <21 | Node >=22 <23 | Node >=23 <24 | Node >=24 | DUK 2.6 | DUK 2.7 | GraalVM 19.3.1[3] | GraalVM 19.3.6[3] | GraalVM 20.0.0[3] | GraalVM 20.1.0[3] | GraalVM 20.3.0[3] | GraalVM 20.3.1[3] | GraalVM 21.0.0[3] | GraalVM 21.3.3[4] | GraalVM 22.2.0[4] | Hermes 0.12.0 | Deno 1.33 | Deno 1.34 | Deno 1.35 | Deno 1.36 | AN 4.4 | AN 4.4.3 | iOS 12.2 | iOS 13.4 | iOS 14.5 | iOS 16.6 | iOS 17.0 | iOS 17.1 | iOS 17.2 | iOS 17.3 | iOS 17.4 | iOS 17.5 | iOS 17.6 | iOS 18.0 | Samsung 24 | Samsung 25 | Samsung 26 | Samsung 27 | Opera Mobile 72 | Opera Mobile 73 | Opera Mobile 74 | Opera Mobile 75 | Opera Mobile 76 | Opera Mobile 77 | React Native 0.70.3 (Hermes + Babel) | |
Stage 3 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
§Class and Property Decorators | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 1/1 | 1/1 | 1/1 | 1/1 | 1/1 | 1/1 | 1/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | 0/1 | ||
§class decorators | ? | No[5] | No[5] | No[5] | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§Legacy RegExp features in JavaScript | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 0/2 | 0/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | ||
§RegExp "lastMatch" ![]() |
? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||
§RegExp.$1-$9 ![]() |
? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||
§Uint8Array to/from base64 and hex | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | ||
§Uint8Array.toBase64() ![]() |
? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | ? | ? | ? | ? | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
§Uint8Array.fromBase64() ![]() |
? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | ? | ? | ? | ? | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
§Uint8Array.setFromBase64() ![]() |
? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | ? | ? | ? | ? | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
§Uint8Array.toHex() ![]() |
? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | ? | ? | ? | ? | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
§Uint8Array.fromHex() ![]() |
? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | ? | ? | ? | ? | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
§Uint8Array.setFromHex() ![]() |
? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Flag[6] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | ? | ? | ? | ? | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
§Explicit Resource Management | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 7/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | ||
§using | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
§for (using ... of | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
§await using | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
§for (await using ... of | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
§SuppressedError | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
§DisposableStack | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
§AsyncDisposableStack | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | Flag[7] | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | Yes | Yes | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
Stage 2.7 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
§ShadowRealm | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | Flag[8] | Flag[8] | Flag[8] | Flag[8] | Flag[8] | Flag[8] | Flag[8] | Flag[8] | Flag[8] | Flag[8] | Flag[8] | Flag[8] | Flag[8] | Flag[8] | Flag[8] | Flag[8] | Flag[8] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§Map.prototype.upsert | 0/2 | 0/2 | 0/2 | 2/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | ||
§Map.prototype.upsert | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§WeakMap.prototype.upsert | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
Stage 2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
§Generator function.sent Meta Property | ? | Yes | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§throw expressions | 0/4 | 0/4 | 4/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | ||
§logical | ? | ? | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§parameter initializers | ? | ? | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§arrow function bodies | ? | ? | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§conditionals | ? | ? | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§Array.isTemplateObject | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§Async Iterator Helpers | 0/17 | 0/17 | 0/17 | 17/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | ||
§instanceof AsyncIterator | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | Flag[0] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§extends AsyncIterator | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | Flag[0] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.from, async iterable | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.from, iterable | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.from, iterator | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.prototype.drop | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | Flag[0] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.prototype.every | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | Flag[0] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.prototype.filter | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | Flag[0] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.prototype.find | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | Flag[0] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.prototype.flatMap | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | Flag[0] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.prototype.forEach | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | Flag[0] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.prototype.map | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | Flag[0] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.prototype.reduce | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | Flag[0] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.prototype.some | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | Flag[0] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.prototype.take | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | Flag[0] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.prototype.toArray | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | Flag[0] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | Flag[12] | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | ||
§AsyncIterator.prototype[@@toStringTag] | ? | No | No | Yes[9] | ? | ? | ? | ? | ? | ? | ? | ? | ?[10] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | Yes[11] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No | No | No | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | No | No | No | No | No | No | No | No | No | No | No |
[1] Flagged features have to be enabled via --harmony
flag
[2] Flagged features have to be enabled via --harmony
or --es_staging
flag
[3] Executed in Node.js/JVM mode via graalvm/bin/node --jvm
.
[4] Executed using js --js.intl-402
.
[5] Babel 6 still has no official support decorators, but you can use this plugin.
[6] The feature has to be enabled via javascript.options.experimental.uint8array_base64
setting under about:config
.
[7] The feature is only available on Nightly builds, and has to be enabled via javascript.options.experimental.explicit_resource_management
setting under about:config
.
[8] The feature has to be enabled via javascript.options.experimental.shadow_realms
setting under about:config
.
[9] This feature is supported when using Babel with core-js.
[10] TypeScript's compiler will accept code using this feature if the --target ES6
flag is set, but passes it through unmodified and does not supply a runtime polyfill.
[11] This feature is supported when using TypeScript with core-js.
[12] The feature is only available on Nightly builds, and has to be enabled via javascript.options.experimental.async_iterator_helpers
setting under about:config
.