Compilers/polyfills | Desktop browsers | Servers/runtimes | Mobile | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Feature name | Current browser | Traceur | Babel + |
Closure | Type- Script + |
Type- Script + |
Type- Script + |
Type- Script + |
Type- Script + |
Type- Script + |
IE 11 | Edge 12 | Edge 13 | Edge 14 | Edge 15 | Edge 16 | Edge 17 Preview | FF 45 ESR | FF 51 | FF 52 ESR | FF 53 | FF 54 | FF 55 | FF 56 | FF 57 | FF 58 | FF 59 Beta | FF 60 Nightly | OP 12.10 | CH 56, OP 43[1] |
CH 57, OP 44[1] |
CH 58, OP 45[1] |
CH 59, OP 46[1] |
CH 60, OP 47[1] |
CH 61, OP 48[1] |
CH 62, OP 49[1] |
CH 63, OP 50[1] |
CH 64, OP 51[1] |
CH 65, OP 52[1] |
CH 66, OP 53[1] |
SF 8 | SF 9 | SF 10 | SF 10.1 | SF 11 | SF 11.1 | SF TP | WK | PJS | Node 0.10[3] | Node 0.12[4] | Node 4[4] | Node >=6.5 <7[4] | Node 7.0-7.5[4] | Node >=7.6 <8[4] | Node 8.0-8.2[4] | Node >=8.3 <8.7[4] | Node >=8.7 <9[4] | DUK 2.0 | DUK 2.1 | DUK 2.2 | AN 4.4 | AN 4.4.3 | iOS 8 | iOS 9 | iOS 10.0-10.2 | iOS >=10.3 <11 | iOS 11 | |
Candidate (stage 3) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
§string trimming | 0/4 | 4/4 | 0/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 0/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 4/4 | 4/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 0/4 | 0/4 | 0/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | 2/4 | ||
§String.prototype.trimLeft ![]() |
No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | 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 | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||
§String.prototype.trimRight ![]() |
No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | 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 | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ||
§String.prototype.trimStart | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | No | No | No | No | No[8] | 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 | ||
§String.prototype.trimEnd | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | No | No | No | No | No[8] | 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 | ||
§global | 0/2 | 2/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 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 0/2 | 2/2 | 2/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | ||
§"global" global property is global object | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No[9] | No[9] | No[9] | No[9] | No[9] | No[9] | No[9] | No[9] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[10] | No[10] | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | ||
§"global" global property has correct property descriptor | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No[9] | No[9] | No[9] | No[9] | No[9] | No[9] | No[9] | No[9] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[10] | No[10] | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | ||
§String.prototype.matchAll | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§instance class fields | 1/3 | 1/3 | 0/3 | 1/3 | 1/3 | 1/3 | 1/3 | 1/3 | 1/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | ||
§public instance class fields | Yes | Yes | No | 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 | ||
§private instance class fields basic support | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§private instance class fields initializers | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Function.prototype.toString revision ![]() |
0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 1/7 | 1/7 | 2/7 | 4/7 | 4/7 | 4/7 | 4/7 | 1/7 | 2/7 | 2/7 | 2/7 | 5/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 0/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 7/7 | 1/7 | 1/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 1/7 | 0/7 | 0/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 1/7 | 1/7 | 1/7 | 0/7 | 0/7 | 1/7 | 1/7 | 4/7 | 4/7 | 4/7 | ||
§functions created with the Function constructor | 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 | Yes | No | No | No | No | Flag[11] | Flag[11] | Flag[11] | Flag[11] | Flag[11] | Flag[11] | Flag[11] | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag[11] | Flag[11] | No | No | No | No | No | No | No | No | No | No | ||
§arrows | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | ||
§[native code] | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | ||
§class expression with implicit constructor | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | ||
§class expression with explicit constructor | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | ||
§unicode escape sequences in identifiers | 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 | Yes | No | No | No | No | Flag[11] | Flag[11] | Flag[11] | Flag[11] | Flag[11] | Flag[11] | Flag[11] | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag[11] | Flag[11] | No | No | No | No | No | No | No | No | No | No | ||
§methods and computed property names | 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 | Yes | No | No | No | No | Flag[11] | Flag[11] | Flag[11] | Flag[11] | Flag[11] | Flag[11] | Flag[11] | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag[11] | Flag[11] | No | No | No | No | No | No | No | No | No | No | ||
§Array.prototype.{flatten, flatMap} | 0/2 | 2/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 | ||
§Array.prototype.flatten | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[7] | No[7] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | 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.prototype.flatMap | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[7] | No[7] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§optional catch binding | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 3/3 | 3/3 | 3/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 3/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 3/3 | 3/3 | 3/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | ||
§basic | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§await | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§yield | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§numeric separators | No | 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 | ||
Draft (stage 2) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
§Generator function.sent Meta Property | No | 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 | ||
§Class and Property Decorators | 0/1 | 0/1 | 0/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 | ||
§class decorators | No | No[12] | No | 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 | ||
§static class fields | 1/2 | 1/2 | 0/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/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 | ||
§public static class fields | Yes | Yes | No | 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 | ||
§private static class fields | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | 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 | 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 | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Symbol.prototype.description | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
Proposal (stage 1) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
§do expressions | No | 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 | ||
§SIMD (Single Instruction, Multiple Data) ![]() |
0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | 0/57 | ||
§basic support ![]() |
No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Float32x4 ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Int32x4 ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Int16x8 ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Int8x16 ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Uint32x4 ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Uint16x8 ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Uint8x16 ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Bool32x4 ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Bool16x8 ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Bool8x16 ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%floatType%.abs ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.add ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%integerType%.addSaturate ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.and ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%booleanType%.anyTrue ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%booleanType%.allTrue ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.check ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.equal ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.extractLane ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.greaterThan ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.greaterThanOrEqual ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.lessThan ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.lessThanOrEqual ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.mul ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%floatType%.div ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.load ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.load1 ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.load2 ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.load3 ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%floatType%.max ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%floatType%.maxNum ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | No | No | No | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%floatType%.min ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%floatType%.minNum ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | No | No | No | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.neg ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.not ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.notEqual ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.or ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%floatType%.reciprocalApproximation ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%floatType%.reciprocalSqrtApproximation ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.replaceLane ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.select ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%integerType%.shiftLeftByScalar ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%integerType%.shiftRightByScalar ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.shuffle ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.splat ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%floatType%.sqrt ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.store ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.store1 ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.store2 ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.store3 ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.sub ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%integerType%.subSaturate ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.swizzle ![]() |
No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.xor ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.fromTIMDBits ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§SIMD.%type%.fromTIMD ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | Flag[13] | Flag[13] | Flag[13] | Flag[13] | No | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No[7] | No | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No[14] | No[14] | No[14] | No[14] | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Realms | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Observable | 0/7 | 7/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 | 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 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | ||
§basic support | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Symbol.observable well known symbol | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Observable.prototype.subscribe | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Observable constructor behavior | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Observable.prototype[Symbol.observable] | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Observable.of | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Observable.from | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§weak references | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Frozen Realms API | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Math.signbit | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Math extensions proposal | 0/7 | 7/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 | 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 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | ||
§Math.clamp | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Math.DEG_PER_RAD | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Math.degrees | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Math.fscale | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Math.RAD_PER_DEG | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Math.radians | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Math.scale | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Promise.try | 0/7 | 7/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 | 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 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | ||
§basic support | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§returns instance of Promise | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§call function synchronously | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§function returns value | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§function throws exception | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§function returns fulfilled Promise | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§function returns rejected Promise | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§`.of` and `.from` on collection constructors | 0/8 | 8/8 | 0/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | ||
§Map.of | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | 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.from | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Set.of | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Set.from | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | 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.of | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | 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.from | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§WeakSet.of | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§WeakSet.from | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§the pipeline operator ![]() |
No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag[15] | Flag[15] | Flag[15] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§extensible numeric literals | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§optional chaining operator (?.) | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | ||
§optional property access | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§optional bracket access | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§optional method call | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§nullish coalescing operator (??) | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§partial application syntax | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | ||
§partial application from left | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§partial application from right | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§partial application for any arg | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§partial application from left with rest | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§partial application from right with rest | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§partial application for any arg with rest | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§mixed partial application | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§runtime evaluation | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§runtime evaluation of property access | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§lexical `this` | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§constructor partial application | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§constructor partial application with rest | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Object.freeze and Object.seal syntax | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | ||
§Object.freeze syntax | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Object.freeze syntax with array literal | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Object.seal syntax | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Object.seal syntax with array literal | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Sealing, function destructuring | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Freezing, function destructuring | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Sealing, function arguments | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Freezing, function arguments | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§String.prototype.replaceAll | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§String.prototype.codePoints | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
Strawman (stage 0) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
§bind (::) operator | 0/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 | ||
§binary form | No | 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 | ||
§unary form | No | 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 | ||
§String.prototype.at | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§additional meta properties | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | ||
§function.callee | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§function.count | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§function.arguments | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§method parameter decorators | No | No | No | 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 | ||
§function expression decorators | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Reflect.isCallable / Reflect.isConstructor | 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 | ||
§Reflect.isCallable | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Reflect.isConstructor | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§zones | 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 | 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 | ||
§Zone | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Zone.current | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Zone.prototype.name | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Zone.prototype.parent | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Zone.prototype.fork | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Zone.prototype.run | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Zone.prototype.wrap | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§asap | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§syntactic tail calls | 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 | ||
§direct recursion | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§mutual recursion | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§object shorthand improvements | 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 | ||
§object initializers | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§destructuring assignments | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
Pre-strawman | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
§Metadata reflection API | 0/9 | 9/9 | 0/9 | 9/9 | 9/9 | 9/9 | 9/9 | 9/9 | 9/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | ||
§Reflect.defineMetadata | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Reflect.hasMetadata | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Reflect.hasOwnMetadata | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Reflect.getMetadata | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Reflect.getOwnMetadata | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Reflect.getMetadataKeys | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Reflect.getOwnMetadataKeys | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Reflect.deleteMetadata | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | ||
§Reflect.metadata | No | Yes[5] | No | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | Yes[6] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | 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 "Experimental Javascript features" flag unless otherwise stated
[2] Flagged features require an optional transformer setting.
[3] Flagged features have to be enabled via --harmony
flag
[4] Flagged features have to be enabled via --harmony
or --es_staging
flag
[5] This feature is supported when using Babel with core-js.
[6] This feature is supported when using TypeScript with core-js.
[7] The feature is enabled by default only in Firefox Nightly.
[8] The feature can be enabled via --js-flags="---harmony-string-trimming" flag
[9] The feature was disabled due to some compatibility issues.
[10] The feature was disabled due to compatibility issues.
[11] The feature have to be enabled via --js-flags="--harmony" flag
[12] Babel 6 still has no official support decorators, but you can use this plugin.
[13] Flagged features have to be enabled via "Enable experimental Javascript features" setting under about:flags
[14] The feature is considered unstable, but can be enabled via --js-flags="--harmony-simd" flag
[15] Requires the --enable-pipeline-operator
compile option.