This table shows proposals which have not yet been included in the current ECMAScript standard, but are at one of the maturity stages of the TC39 process.
V8 SpiderMonkey JavaScriptCore Chakra Other
Minor difference (1 point) Small feature (2 points) Medium feature (4 points) Large feature (8 points)
Compilers/polyfills Desktop browsers Servers/runtimes Mobile
Feature name Current browser Traceur Babel 6 +
core-js 2
Babel 7 +
core-js 2
Babel 7 +
core-js 3
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 +
core-js 2
Type-
Script +
core-js 3
Type-
Script +
core-js 3
Type-
Script +
core-js 3
Type-
Script +
core-js 3
Type-
Script +
core-js 3
Type-
Script +
core-js 3
FF 102 ESR FF 115 ESR FF 116 FF 117 FF 118 FF 119 FF 120 FF 121 FF 122 FF 123 FF 124 FF 125 FF 126 FF 127 FF 128 ESR FF 129 FF 130 OP 12.10 CH 115 CH 116 CH 117 CH 118 CH 119 CH 120 CH 121 CH 122 CH 123 CH 124 CH 125 CH 126 CH 127 Edge 18 Edge 115 Edge 116 Edge 117 Edge 118 Edge 119 Edge 120 Edge 121 Edge 122 Edge 123 Edge 124 Edge 125 Edge 126 Edge 127 SF 15.6 SF 16.6 SF 17.0 SF 17.1 SF 17.2 SF 17.3 SF 17.4 SF 17.5 SF TP WK OP 88 OP 89 OP 90 OP 91 OP 92 OP 93 OP 94 OP 95 OP 96 OP 97 OP 98 OP 99 Rhino 1.7.13 Rhino 1.7.14 Rhino 1.7.15 PJS Node 0.4[1] Node 0.6[1] Node 0.8[1] Node 0.10[1] Node 0.12[2] Node >=14.6 <15[2] Node >=16.0 <16.8[2] Node >=16.9 <16.11 Node >=16.11 <17 Node >=17.0 <17.2 Node >=17.2 <18 Node >=18.0 <18.3 Node >=18.3 <19 Node >=19 <19.2 Node >=19.2 <20 Node >=20 <21 Node >=21 <22 Node >=22 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 iOS 16.1 iOS 16.2 iOS 16.3 iOS 16.4 iOS 16.5 iOS 16.6 iOS 17.0 Samsung 19 Samsung 20 Samsung 21 Samsung 22 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 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 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 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
§RegExp "lastMatch" MDN (Mozilla Development Network) logo  ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 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 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
§RegExp.$1-$9 MDN (Mozilla Development Network) logo  ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 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 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
§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 16/17 16/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 16/17 16/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 Iterator ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§extends Iterator ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.from, iterable ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.from, iterator ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.prototype.asIndexedPairs ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[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 No ? ? ? ? ? ? ? No No No No No No No ? ? ? ? ? ? ? ? ? ? ? ? ? No No No No No No No No No No No
§Iterator.prototype.drop ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.prototype.every ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.prototype.filter ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.prototype.find ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.prototype.flatMap ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.prototype.forEach ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.prototype.map ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.prototype.reduce ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.prototype.some ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.prototype.take ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.prototype.toArray ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
§Iterator.prototype[@@toStringTag] ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] ? No No No No No No No No No No No Yes Yes No No No No No No No No No No No No 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
Stage 2.7
§ShadowRealm ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? No Flag[10] Flag[10] Flag[10] Flag[10] Flag[10] Flag[10] Flag[10] Flag[10] Flag[10] Flag[10] Flag[10] Flag[10] Flag[10] Flag[10] Flag[10] Flag[10] No No No No No No No No No No No No No No No No No No No No No No No No No No No No ? ? ? ? ? ? ? ? ? ? No No No No No No No No No No No No No No No ? ? ? ? ? ? No No No No No No No No No No No No No No No No 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 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 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 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 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 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 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 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[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[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 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[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[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 No ? ? ? ? ? ? ? No No No No No No No ? ? ? ? ? ? ? ? ? ? ? ? ? No No No No No No No No No No No
§Array.isTemplateObject ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[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 No ? ? ? ? ? ? ? No No No No No No No ? ? ? ? ? ? ? ? ? ? ? ? ? No No No No No No No No No No No
§Async Iterator Helpers 0/18 0/18 0/18 18/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 18/18 18/18 18/18 18/18 18/18 18/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18 0/18
§instanceof AsyncIterator ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§extends AsyncIterator ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§AsyncIterator.from, async iterable ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[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 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[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[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 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[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[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 No ? ? ? ? ? ? ? No No No No No No No ? ? ? ? ? ? ? ? ? ? ? ? ? No No No No No No No No No No No
§AsyncIterator.prototype.asIndexedPairs ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§AsyncIterator.prototype.drop ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§AsyncIterator.prototype.every ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§AsyncIterator.prototype.filter ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§AsyncIterator.prototype.find ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§AsyncIterator.prototype.flatMap ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§AsyncIterator.prototype.forEach ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§AsyncIterator.prototype.map ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§AsyncIterator.prototype.reduce ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§AsyncIterator.prototype.some ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§AsyncIterator.prototype.take ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§AsyncIterator.prototype.toArray ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] No No No Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[9] Flag[11] Flag[11] Flag[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
§AsyncIterator.prototype[@@toStringTag] ? No No Yes[6] ? ? ? ? ? ? ? ? ?[7] Yes[8] Yes[8] Yes[8] Yes[8] Yes[8] Yes[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 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] This feature is supported when using Babel with core-js.

[7] 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.

[8] This feature is supported when using TypeScript with core-js.

[9] The feature is only available on Nightly builds, and has to be enabled via javascript.options.experimental.iterator_helpers setting under about:config.

[10] The feature has to be enabled via javascript.options.experimental.shadow_realms setting under about:config.

[11] The feature is only available on Nightly builds, and has to be enabled via javascript.options.experimental.async_iterator_helpers setting under about:config.