| Compilers/polyfills | Desktop browsers | Servers/runtimes | Mobile | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Feature name | Current browser | ES6 Trans- piler |
Traceur | Babel + |
Closure | JSX | Type- Script + |
es6-shim | KQ 4.14[3] |
IE 7 | IE 8 | IE 9 | IE 10 | IE 11 | Edge 12[4] | Edge 13[4] | Edge 14[4] | Edge 15[4] | FF 38 ESR |
FF 42 | FF 43 | FF 44 | FF 45 ESR | FF 46 | FF 47 | FF 48 | FF 49 | FF 50 | FF 51 Beta | FF 52 Aurora | FF 53 Nightly | OP 12 | OP 12.10 | CH 46, OP 33[1] |
CH 47, OP 34[1] |
CH 48, OP 35[1] |
CH 49, OP 36[1] |
CH 50, OP 37[1] |
CH 51, OP 38[1] |
CH 52, OP 39[1] |
CH 53, OP 40[1] |
CH 54, OP 41[1] |
CH 55, OP 42[1] |
CH 56, OP 43[1] |
CH 57, OP 44[1] |
SF 5 | SF 5.1 |
SF 6 | SF 6.1, SF 7 |
SF 7.1, SF 8 |
SF 9 | SF 10 | SF TP | WK | Rhino 1.7 | PJS | Echo JS | XS6 | JXA | Node 0.10[5] | Node 0.12[5] | io.js[5] | Node 4[5] | Node 5[5] | Node 6.0-6.4[5] | Node 6.5[5] | Node 7[5] | AN 4.0 | AN 4.1 | AN 4.2 | AN 4.3 | AN 4.4 | AN 5.0 | AN 5.1 | iOS 5.1 | iOS 6 | iOS 7 | iOS 8 | iOS 9 | iOS 10 | |
| Optimisation | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| §proper tail calls (tail call optimisation) | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 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 | 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 | 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 | ||
| §direct recursion | No | Flag[6] | No | No | No | 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 | Flag | Flag | Flag | Flag | Flag | Flag | Flag | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §mutual recursion | No | Flag[6] | No | No | No | 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 | Flag | Flag | Flag | Flag | Flag | Flag | Flag | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| Syntax | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| §default function parameters | 4/7 | 4/7 | 4/7 | 4/7 | 0/7 | 5/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 7/7 | 7/7 | 3/7 | 3/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 4/7 | 6/7 | 6/7 | 7/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 7/7 | 7/7 | 7/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 | 7/7 | 7/7 | 7/7 | 0/7 | 0/7 | 4/7 | 7/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/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 | 7/7 | ||
| §basic functionality | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §explicit undefined defers to the default | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §defaults can refer to previous params | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §arguments object interaction | Yes | Yes | Yes | No | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §temporal dead zone | No | No | No | No | No | Yes | No | No | No | No | No | No | No | Flag | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §separate scope | No | No | No | Yes | No | No | No | No | No | No | No | No | No | Flag | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §new Function() support | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Flag | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No[0] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §rest parameters | 2/5 | 4/5 | 3/5 | 2/5 | 3/5 | 4/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 5/5 | 5/5 | 5/5 | 5/5 | 4/5 | 4/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 0/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 3/5 | 5/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 5/5 | ||
| §basic functionality | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Flag | Flag | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §function 'length' property | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Flag | Flag | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §arguments object interaction | No | Yes | Yes | No | No | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Flag | Flag | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §can't be used in setters | No | Yes | No | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Flag | Flag | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §new Function() support | No | No | No | No | 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 | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No[0] | Yes | No | No | No | No | Flag | Flag | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §spread (...) operator | 8/15 | 15/15 | 13/15 | 12/15 | 2/15 | 4/15 | 0/15 | 0/15 | 0/15 | 0/15 | 0/15 | 0/15 | 0/15 | 12/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 0/15 | 0/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 15/15 | 0/15 | 0/15 | 0/15 | 0/15 | 5/15 | 9/15 | 15/15 | 15/15 | 15/15 | 0/15 | 0/15 | 10/15 | 15/15 | 11/15 | 0/15 | 0/15 | 0/15 | 0/15 | 15/15 | 15/15 | 15/15 | 15/15 | 0/15 | 0/15 | 0/15 | 0/15 | 0/15 | 0/15 | 0/15 | 0/15 | 0/15 | 0/15 | 0/15 | 9/15 | 15/15 | ||
| §with arrays, in function calls | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with arrays, in array literals | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with sparse arrays, in function calls | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with sparse arrays, in array literals | No | Yes | No | No | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with strings, in function calls | No | Yes | Yes | Yes | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §with strings, in array literals | No | Yes | Yes | Yes | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with astral plane strings, in function calls | No | Yes | Yes | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §with astral plane strings, in array literals | No | Yes | Yes | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with generator instances, in calls | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §with generator instances, in arrays | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §with generic iterables, in calls | Yes[8] | Yes | Yes | Yes | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §with generic iterables, in arrays | Yes[8] | Yes | Yes | Yes | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with instances of iterables, in calls | Yes[8] | Yes | Yes | Yes | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §with instances of iterables, in arrays | Yes[8] | Yes | Yes | Yes | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §spreading non-iterables is a runtime error | Yes | Yes | No | Yes | No | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Flag | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §object literal extensions | 6/6 | 6/6 | 6/6 | 4/6 | 5/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 1/6 | 5/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 5/6 | 6/6 | 5/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 5/6 | 6/6 | ||
| §computed properties | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §shorthand properties | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §shorthand methods | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes[9] | Yes[9] | Yes[9] | Yes[9] | Yes[9] | Yes[9] | Yes[9] | Yes[9] | Yes[9] | Yes[9] | Yes[9] | Yes[9] | Yes[9] | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §string-keyed shorthand methods | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §computed shorthand methods | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §computed accessors | Yes | Yes | Yes | No | No | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §for..of loops | 4/9 | 9/9 | 9/9 | 6/9 | 2/9 | 3/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 6/9 | 7/9 | 7/9 | 9/9 | 7/9 | 7/9 | 7/9 | 7/9 | 7/9 | 7/9 | 7/9 | 7/9 | 7/9 | 7/9 | 7/9 | 7/9 | 7/9 | 0/9 | 0/9 | 7/9 | 7/9 | 7/9 | 7/9 | 7/9 | 9/9 | 9/9 | 9/9 | 9/9 | 9/9 | 9/9 | 9/9 | 0/9 | 0/9 | 0/9 | 0/9 | 2/9 | 8/9 | 9/9 | 9/9 | 9/9 | 0/9 | 0/9 | 7/9 | 9/9 | 8/9 | 0/9 | 7/9 | 7/9 | 7/9 | 7/9 | 7/9 | 9/9 | 9/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 0/9 | 7/9 | 0/9 | 0/9 | 0/9 | 0/9 | 8/9 | 9/9 | ||
| §with arrays | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §with sparse arrays | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §with strings | No | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §with astral plane strings | No | Yes | Yes | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §with generator instances | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §with generic iterables | Yes[8] | Yes | Yes | Yes | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §with instances of generic iterables | Yes[8] | Yes | Yes | Yes | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §iterator closing, break | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | 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 | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §iterator closing, throw | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | 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 | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §octal and binary literals | 2/4 | 2/4 | 4/4 | 4/4 | 0/4 | 4/4 | 2/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 2/4 | 4/4 | 4/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/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 | 4/4 | 4/4 | ||
| §octal literals | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §binary literals | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §octal supported by Number() | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §binary supported by Number() | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §template literals | 3/5 | 4/5 | 4/5 | 3/5 | 4/5 | 3/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 4/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 5/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 4/5 | 5/5 | 5/5 | 0/5 | 0/5 | 0/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 5/5 | 5/5 | ||
| §basic functionality | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §toString conversion | No | No | No | No | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §tagged template literals | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §passed array is frozen | Yes | Yes | Yes | No | Yes | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §line break normalisation | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §RegExp "y" and "u" flags | 0/5 | 3/5 | 3/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 2/5 | 5/5 | 5/5 | 5/5 | 2/5 | 2/5 | 2/5 | 2/5 | 2/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 2/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 2/5 | 2/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 5/5 | ||
| §"y" flag | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"y" flag, lastIndex | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"u" flag | No | Yes | Yes | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"u" flag, Unicode code point escapes | No | Yes | Yes | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"u" flag, case folding | No | Yes | Yes | No | No | No[7] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §destructuring, declarations | 14/22 | 20/22 | 21/22 | 18/22 | 12/22 | 15/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 21/22 | 22/22 | 19/22 | 19/22 | 19/22 | 19/22 | 19/22 | 19/22 | 21/22 | 21/22 | 21/22 | 21/22 | 21/22 | 21/22 | 21/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 21/22 | 21/22 | 22/22 | 22/22 | 22/22 | 22/22 | 22/22 | 22/22 | 22/22 | 0/22 | 0/22 | 0/22 | 0/22 | 9/22 | 19/22 | 22/22 | 22/22 | 22/22 | 0/22 | 0/22 | 12/22 | 21/22 | 19/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 21/22 | 22/22 | 22/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 0/22 | 19/22 | 22/22 | ||
| §with arrays | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with sparse arrays | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with strings | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with astral plane strings | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with generator instances | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §with generic iterables | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with instances of generic iterables | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §iterator closing | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | 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 | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §trailing commas in iterable patterns | Yes | No | Yes | No | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with objects | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §object destructuring with primitives | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §trailing commas in object patterns | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §throws on null and undefined | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §computed properties | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §multiples in a single var statement | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §nested | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §in for-in loop heads | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §in for-of loop heads | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §in catch heads | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §rest | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §defaults | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §defaults, let temporal dead zone | No | No | Flag | No | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §destructuring, assignment | 17/24 | 23/24 | 24/24 | 16/24 | 11/24 | 19/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 23/24 | 24/24 | 20/24 | 21/24 | 21/24 | 21/24 | 21/24 | 21/24 | 23/24 | 23/24 | 23/24 | 23/24 | 23/24 | 23/24 | 23/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 23/24 | 23/24 | 24/24 | 24/24 | 24/24 | 24/24 | 24/24 | 24/24 | 24/24 | 0/24 | 0/24 | 0/24 | 0/24 | 12/24 | 21/24 | 24/24 | 24/24 | 24/24 | 0/24 | 0/24 | 14/24 | 24/24 | 21/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 23/24 | 24/24 | 24/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 21/24 | 24/24 | ||
| §with arrays | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with sparse arrays | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with strings | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with astral plane strings | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with generator instances | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §with generic iterables | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with instances of generic iterables | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §iterator closing | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | 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 | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §iterable destructuring expression | Yes | Yes | Yes | No | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §chained iterable destructuring | Yes | Yes | Yes | No | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §trailing commas in iterable patterns | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with objects | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §object destructuring with primitives | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §trailing commas in object patterns | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §object destructuring expression | Yes | Yes | Yes | No | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §parenthesised left-hand-side is a syntax error | No | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §chained object destructuring | Yes | Yes | Yes | No | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §throws on null and undefined | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §computed properties | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §nested | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §rest | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §nested rest | No | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §empty patterns | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §defaults | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §destructuring, parameters | 15/23 | 19/23 | 20/23 | 17/23 | 12/23 | 15/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 22/23 | 23/23 | 18/23 | 18/23 | 18/23 | 18/23 | 18/23 | 18/23 | 19/23 | 19/23 | 19/23 | 19/23 | 20/23 | 20/23 | 22/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 22/23 | 22/23 | 23/23 | 23/23 | 23/23 | 23/23 | 23/23 | 23/23 | 23/23 | 0/23 | 0/23 | 0/23 | 0/23 | 10/23 | 18/23 | 23/23 | 23/23 | 23/23 | 0/23 | 0/23 | 12/23 | 23/23 | 18/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 22/23 | 23/23 | 23/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 0/23 | 18/23 | 23/23 | ||
| §with arrays | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with sparse arrays | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with strings | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with astral plane strings | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with generator instances | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §with generic iterables | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with instances of generic iterables | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §iterator closing | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | 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 | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §trailing commas in iterable patterns | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §with objects | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §object destructuring with primitives | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §trailing commas in object patterns | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §throws on null and undefined | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §computed properties | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §nested | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §'arguments' interaction | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §new Function() support | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §in parameters, function 'length' property | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §rest | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §empty patterns | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §defaults | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §defaults, separate scope | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §defaults, new Function() support | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No[0] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Unicode code point escapes | 1/2 | 1/2 | 1/2 | 1/2 | 0/2 | 1/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 2/2 | 2/2 | 2/2 | 2/2 | 0/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/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 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 2/2 | 2/2 | 2/2 | 2/2 | 0/2 | 0/2 | 2/2 | 2/2 | 2/2 | 0/2 | 0/2 | 0/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 | 2/2 | 2/2 | ||
| §in strings | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §in identifiers | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §new.target | 0/2 | 0/2 | 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 | 2/2 | 2/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 | 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 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 2/2 | 2/2 | 2/2 | 0/2 | 0/2 | 2/2 | 2/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/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 | 2/2 | ||
| §in constructors | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §assignment is an early error | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| Bindings | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| §const | 10/16 | 14/16 | 14/16 | 14/16 | 0/16 | 14/16 | 0/16 | 2/16 | 0/16 | 0/16 | 0/16 | 0/16 | 12/16 | 12/16 | 12/16 | 16/16 | 16/16 | 12/16 | 12/16 | 12/16 | 12/16 | 12/16 | 12/16 | 12/16 | 12/16 | 12/16 | 12/16 | 16/16 | 16/16 | 16/16 | 1/16 | 1/16 | 9/16 | 9/16 | 9/16 | 16/16 | 16/16 | 16/16 | 16/16 | 16/16 | 16/16 | 16/16 | 16/16 | 16/16 | 0/16 | 1/16 | 1/16 | 1/16 | 1/16 | 1/16 | 16/16 | 16/16 | 16/16 | 0/16 | 1/16 | 8/16 | 16/16 | 10/16 | 0/16 | 1/16 | 1/16 | 9/16 | 9/16 | 16/16 | 16/16 | 16/16 | 1/16 | 1/16 | 1/16 | 1/16 | 1/16 | 1/16 | 1/16 | 0/16 | 1/16 | 1/16 | 1/16 | 1/16 | 16/16 | ||
| §basic support | Yes | Yes | Yes | Yes | No | Yes | No | Yes | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §is block-scoped | Yes | Yes | Yes | Yes | No | Yes | 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 | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §cannot be in statements | Yes | Yes | Yes | Yes | No | Yes | 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 | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §redefining a const is an error | Yes | Yes | Yes | Yes | No | Yes | 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 | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §for loop statement scope | Yes | Yes | Yes | Yes | No | Yes | 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 | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §for-in loop iteration scope | No | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §for-of loop iteration scope | No | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §temporal dead zone | No | No | Flag | 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 | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §basic support (strict mode) | Yes | Yes | Yes | Yes | No | Yes | No | Yes | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §is block-scoped (strict mode) | Yes | Yes | Yes | Yes | No | Yes | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §cannot be in statements (strict mode) | Yes | Yes | Yes | Yes | No | Yes | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §redefining a const (strict mode) | Yes | Yes | Yes | Yes | No | Yes | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §for loop statement scope (strict mode) | Yes | Yes | Yes | Yes | No | Yes | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §for-in loop iteration scope (strict mode) | No | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §for-of loop iteration scope (strict mode) | No | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §temporal dead zone (strict mode) | No | No | Flag | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §let | 8/12 | 10/12 | 10/12 | 10/12 | 0/12 | 10/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 10/12 | 10/12 | 10/12 | 12/12 | 12/12 | 0/12 | 0/12 | 0/12 | 10/12 | 10/12 | 10/12 | 10/12 | 10/12 | 10/12 | 10/12 | 12/12 | 12/12 | 12/12 | 0/12 | 0/12 | 6/12 | 6/12 | 6/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 12/12 | 12/12 | 12/12 | 0/12 | 0/12 | 8/12 | 12/12 | 0/12 | 0/12 | 0/12 | 0/12 | 6/12 | 6/12 | 12/12 | 12/12 | 12/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 | 12/12 | ||
| §basic support | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Flag[11] | Flag[11] | Flag[11] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §is block-scoped | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Flag[11] | Flag[11] | Flag[11] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §cannot be in statements | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Flag[11] | Flag[11] | Flag[11] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §for loop statement scope | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Flag[11] | Flag[11] | Flag[11] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §temporal dead zone | No | No | Flag | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Flag[11] | Flag[11] | Flag[11] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §for/for-in loop iteration scope | No | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §basic support (strict mode) | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Flag[11] | Flag[11] | Flag[11] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §is block-scoped (strict mode) | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Flag[11] | Flag[11] | Flag[11] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §cannot be in statements (strict mode) | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Flag[11] | Flag[11] | Flag[11] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §for loop statement scope (strict mode) | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Flag[11] | Flag[11] | Flag[11] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §temporal dead zone (strict mode) | No | No | Flag | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Flag[11] | Flag[11] | Flag[11] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §for/for-in loop iteration scope (strict mode) | No | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §block-level function declaration[12] | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| Functions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| §arrow functions | 8/13 | 11/13 | 9/13 | 10/13 | 8/13 | 9/13 | 0/13 | 0/13 | 0/13 | 0/13 | 0/13 | 0/13 | 0/13 | 8/13 | 13/13 | 13/13 | 13/13 | 8/13 | 10/13 | 11/13 | 11/13 | 13/13 | 13/13 | 13/13 | 13/13 | 13/13 | 13/13 | 13/13 | 13/13 | 13/13 | 0/13 | 0/13 | 10/13 | 11/13 | 11/13 | 13/13 | 13/13 | 13/13 | 13/13 | 13/13 | 13/13 | 13/13 | 13/13 | 13/13 | 0/13 | 0/13 | 0/13 | 0/13 | 0/13 | 0/13 | 13/13 | 13/13 | 13/13 | 0/13 | 0/13 | 7/13 | 12/13 | 0/13 | 0/13 | 0/13 | 0/13 | 9/13 | 10/13 | 13/13 | 13/13 | 13/13 | 0/13 | 0/13 | 0/13 | 0/13 | 0/13 | 0/13 | 0/13 | 0/13 | 0/13 | 0/13 | 0/13 | 0/13 | 13/13 | ||
| §0 parameters | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §1 parameter, no brackets | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §multiple parameters | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §lexical "this" binding | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"this" unchanged by call or apply | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §can't be bound, can be curried | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §lexical "arguments" binding | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
§no line break between params and => |
No | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §correct precedence | No | Yes | No | Yes | No | 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 | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §no "prototype" property | No | No | No | No | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §lexical "super" binding in constructors | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §lexical "super" binding in methods | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §lexical "new.target" binding | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §class | 17/24 | 17/24 | 19/24 | 13/24 | 16/24 | 19/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 24/24 | 24/24 | 24/24 | 0/24 | 0/24 | 0/24 | 0/24 | 24/24 | 24/24 | 24/24 | 24/24 | 24/24 | 24/24 | 24/24 | 24/24 | 24/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 24/24 | 24/24 | 24/24 | 24/24 | 24/24 | 24/24 | 24/24 | 24/24 | 24/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 16/24 | 24/24 | 24/24 | 24/24 | 0/24 | 0/24 | 22/24 | 24/24 | 18/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 24/24 | 24/24 | 24/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 0/24 | 16/24 | 24/24 | ||
| §class statement | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §is block-scoped | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §class expression | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §anonymous class | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §constructor | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §prototype methods | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §string-keyed methods | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §computed prototype methods | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §optional semicolons | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §static methods | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §computed static methods | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §accessor properties | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §computed accessor properties | Yes | Yes | Yes | Yes | No | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §static accessor properties | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §computed static accessor properties | Yes | Yes | Yes | No | No | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §class name is lexically scoped | Yes | Yes | Yes | No | No | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §computed names, temporal dead zone | No | No | No | No | No | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §methods aren't enumerable | No | No | Yes | No | Yes | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §implicit strict mode | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §constructor requires new | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §extends | No[13] | No[13] | No[13] | No[14] | No[14] | No[15] | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §extends expressions | No[13] | No[13] | No[13] | No | No[14] | No[15] | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §extends null | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §new.target | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §super | 7/8 | 7/8 | 4/8 | 5/8 | 7/8 | 7/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 8/8 | 8/8 | 8/8 | 0/8 | 0/8 | 0/8 | 0/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 6/8 | 8/8 | 8/8 | 8/8 | 0/8 | 0/8 | 6/8 | 8/8 | 7/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/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 | 6/8 | 8/8 | ||
| §statement in constructors | Yes | Yes | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §expression in constructors | Yes | Yes | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §in methods, property access | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §in methods, method calls | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §method calls use correct "this" binding | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §constructor calls use correct "new.target" binding | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §is statically bound | Yes | Yes | Yes | No | Yes | Yes | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §super() invokes the correct constructor | Yes | Yes | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §generators | 0/27 | 24/27 | 24/27 | 16/27 | 0/27 | 0/27 | 0/27 | 0/27 | 0/27 | 0/27 | 0/27 | 0/27 | 0/27 | 0/27 | 27/27 | 27/27 | 27/27 | 20/27 | 20/27 | 21/27 | 21/27 | 25/27 | 25/27 | 25/27 | 25/27 | 25/27 | 25/27 | 25/27 | 25/27 | 25/27 | 0/27 | 0/27 | 20/27 | 20/27 | 20/27 | 23/27 | 27/27 | 27/27 | 27/27 | 27/27 | 27/27 | 27/27 | 27/27 | 27/27 | 0/27 | 0/27 | 0/27 | 0/27 | 0/27 | 0/27 | 27/27 | 27/27 | 27/27 | 0/27 | 0/27 | 16/27 | 27/27 | 0/27 | 0/27 | 0/27 | 0/27 | 20/27 | 20/27 | 27/27 | 27/27 | 27/27 | 0/27 | 0/27 | 0/27 | 0/27 | 0/27 | 0/27 | 16/27 | 0/27 | 0/27 | 0/27 | 0/27 | 0/27 | 27/27 | ||
| §basic functionality | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §generator function expressions | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §correct "this" binding | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §can't use "this" with new | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §sending | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §%GeneratorPrototype% | No | Yes | Yes[16] | No | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §%GeneratorPrototype% prototype chain | No | Yes | Yes[16] | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%GeneratorPrototype%.constructor | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §%GeneratorPrototype%.throw | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §%GeneratorPrototype%.return | No | Yes | Yes[16] | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §yield operator precedence | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §yield *, arrays | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §yield *, sparse arrays | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §yield *, strings | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §yield *, astral plane strings | No | Yes | Yes[16] | No | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §yield *, generator instances | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §yield *, generic iterables | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §yield *, instances of iterables | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §yield * on non-iterables is a runtime error | No | Yes | No | No | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §yield *, iterator closing | No | Yes | Yes[16] | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | 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 | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §yield *, iterator closing via throw() | No | Yes | Yes[16] | 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 | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §shorthand generator methods | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §string-keyed shorthand generator methods | No | Yes | Yes[16] | No | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §computed shorthand generators | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §shorthand generator methods, classes | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §computed shorthand generators, classes | No | Yes | Yes[16] | Yes | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §shorthand generators can't be constructors | No | No | Yes[16] | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| Built-ins | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| §typed arrays | 0/46 | 0/46 | 45/46 | 0/46 | 0/46 | 45/46 | 0/46 | 8/46 | 0/46 | 0/46 | 0/46 | 16/46 | 16/46 | 42/46 | 44/46 | 46/46 | 46/46 | 41/46 | 41/46 | 41/46 | 42/46 | 42/46 | 43/46 | 43/46 | 45/46 | 45/46 | 45/46 | 45/46 | 46/46 | 46/46 | 19/46 | 19/46 | 43/46 | 43/46 | 43/46 | 43/46 | 43/46 | 46/46 | 46/46 | 46/46 | 46/46 | 46/46 | 46/46 | 46/46 | 0/46 | 16/46 | 18/46 | 18/46 | 18/46 | 18/46 | 46/46 | 46/46 | 46/46 | 0/46 | 18/46 | 37/46 | 46/46 | 46/46 | 0/46 | 23/46 | 23/46 | 43/46 | 43/46 | 43/46 | 46/46 | 46/46 | 15/46 | 16/46 | 16/46 | 16/46 | 19/46 | 19/46 | 23/46 | 0/46 | 16/46 | 18/46 | 18/46 | 18/46 | 46/46 | ||
| §Int8Array | No | No | Yes | No | No | Yes[10] | No | Yes | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §Uint8Array | No | No | Yes | No | No | Yes[10] | No | Yes | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §Uint8ClampedArray | No | No | Yes | No | No | Yes[10] | 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 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | ||
| §Int16Array | No | No | Yes | No | No | Yes[10] | No | Yes | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §Uint16Array | No | No | Yes | No | No | Yes[10] | No | Yes | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §Int32Array | No | No | Yes | No | No | Yes[10] | No | Yes | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §Uint32Array | No | No | Yes | No | No | Yes[10] | No | Yes | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §Float32Array | No | No | Yes | No | No | Yes[10] | No | Yes | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §Float64Array | No | No | Yes | No | No | Yes[10] | No | Yes | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §DataView (Int8) | No | No | Yes | No | No | Yes[10] | No | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §DataView (Uint8) | No | No | Yes | No | No | Yes[10] | No | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §DataView (Int16) | No | No | Yes | No | No | Yes[10] | No | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §DataView (Uint16) | No | No | Yes | No | No | Yes[10] | No | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §DataView (Int32) | No | No | Yes | No | No | Yes[10] | No | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §DataView (Uint32) | No | No | Yes | No | No | Yes[10] | No | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §DataView (Float32) | No | No | Yes | No | No | Yes[10] | No | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §DataView (Float64) | No | No | Yes | No | No | Yes[10] | No | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §ArrayBuffer[Symbol.species] | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §constructors require new | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Yes | Yes | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | ||
| §constructors accept generic iterables | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §correct prototype chains | No | No | No | No | 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 | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.from | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.of | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.subarray | No | No | Yes | No | No | Yes[10] | 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 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | ||
| §%TypedArray%.prototype.join | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.indexOf | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.lastIndexOf | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.slice | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.every | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.filter | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.forEach | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.map | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.reduce | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.reduceRight | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.reverse | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.some | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.sort | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.copyWithin | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.find | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.findIndex | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.fill | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.keys | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.values | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype.entries | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §%TypedArray%.prototype[Symbol.iterator] | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §%TypedArray%[Symbol.species] | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Map | 0/19 | 14/19 | 19/19 | 14/19 | 0/19 | 19/19 | 15/19 | 0/19 | 0/19 | 0/19 | 0/19 | 0/19 | 8/19 | 16/19 | 18/19 | 18/19 | 19/19 | 15/19 | 17/19 | 17/19 | 17/19 | 18/19 | 18/19 | 18/19 | 18/19 | 18/19 | 18/19 | 18/19 | 18/19 | 19/19 | 0/19 | 0/19 | 17/19 | 17/19 | 17/19 | 17/19 | 17/19 | 19/19 | 19/19 | 19/19 | 19/19 | 19/19 | 19/19 | 19/19 | 0/19 | 0/19 | 0/19 | 0/19 | 11/19 | 18/19 | 19/19 | 19/19 | 19/19 | 0/19 | 0/19 | 17/19 | 19/19 | 18/19 | 0/19 | 13/19 | 13/19 | 17/19 | 17/19 | 17/19 | 19/19 | 19/19 | 0/19 | 0/19 | 0/19 | 0/19 | 0/19 | 0/19 | 16/19 | 0/19 | 0/19 | 0/19 | 0/19 | 18/19 | 19/19 | ||
| §basic functionality | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §constructor arguments | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §constructor requires new | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §constructor accepts null | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §constructor invokes set | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §iterator closing | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Map.prototype.set returns this | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §-0 key converts to +0 | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Map.prototype.size | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Map.prototype.delete | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Map.prototype.clear | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Map.prototype.forEach | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Map.prototype.keys | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Map.prototype.values | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Map.prototype.entries | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Map.prototype[Symbol.iterator] | No | Yes | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Map.prototype isn't an instance | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Map iterator prototype chain | No | Yes | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Map[Symbol.species] | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Set | 0/19 | 14/19 | 19/19 | 14/19 | 0/19 | 19/19 | 15/19 | 0/19 | 0/19 | 0/19 | 0/19 | 0/19 | 8/19 | 16/19 | 18/19 | 18/19 | 19/19 | 15/19 | 17/19 | 17/19 | 17/19 | 18/19 | 18/19 | 18/19 | 18/19 | 18/19 | 18/19 | 18/19 | 18/19 | 19/19 | 0/19 | 0/19 | 17/19 | 17/19 | 17/19 | 17/19 | 17/19 | 19/19 | 19/19 | 19/19 | 19/19 | 19/19 | 19/19 | 19/19 | 0/19 | 0/19 | 0/19 | 0/19 | 11/19 | 18/19 | 19/19 | 19/19 | 19/19 | 0/19 | 0/19 | 18/19 | 19/19 | 18/19 | 0/19 | 13/19 | 13/19 | 17/19 | 17/19 | 17/19 | 19/19 | 19/19 | 0/19 | 0/19 | 0/19 | 0/19 | 0/19 | 0/19 | 16/19 | 0/19 | 0/19 | 0/19 | 0/19 | 18/19 | 19/19 | ||
| §basic functionality | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §constructor arguments | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §constructor requires new | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §constructor accepts null | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §constructor invokes add | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §iterator closing | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Set.prototype.add returns this | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §-0 key converts to +0 | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Set.prototype.size | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Set.prototype.delete | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Set.prototype.clear | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Set.prototype.forEach | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Set.prototype.keys | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Set.prototype.values | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Set.prototype.entries | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Set.prototype[Symbol.iterator] | No | Yes | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Set.prototype isn't an instance | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Set iterator prototype chain | No | Yes | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Set[Symbol.species] | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §WeakMap | 0/12 | 6/12 | 12/12 | 9/12 | 0/12 | 12/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 6/12 | 11/12 | 11/12 | 11/12 | 12/12 | 8/12 | 10/12 | 10/12 | 10/12 | 10/12 | 11/12 | 11/12 | 11/12 | 11/12 | 11/12 | 11/12 | 11/12 | 12/12 | 0/12 | 0/12 | 11/12 | 11/12 | 11/12 | 11/12 | 11/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 0/12 | 0/12 | 0/12 | 0/12 | 7/12 | 12/12 | 12/12 | 12/12 | 12/12 | 0/12 | 0/12 | 9/12 | 11/12 | 11/12 | 0/12 | 7/12 | 8/12 | 11/12 | 11/12 | 11/12 | 12/12 | 12/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 6/12 | 9/12 | 0/12 | 0/12 | 0/12 | 0/12 | 12/12 | 12/12 | ||
| §basic functionality | No | Yes | Yes | Yes | No | Yes[10] | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §constructor arguments | No | No | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §constructor requires new | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §constructor accepts null | No | Yes | Yes | Yes | No | Yes[10] | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §constructor invokes set | No | No | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §frozen objects as keys | No | Yes | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §iterator closing | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §WeakMap.prototype.set returns this | No | Yes | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §WeakMap.prototype.delete | No | Yes | Yes | Yes | No | Yes[10] | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §no WeakMap.prototype.clear method | No | No | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §.has, .get and .delete methods accept primitives | No | No | Yes | Yes | No | Yes[10] | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | ? | ? | ? | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §WeakMap.prototype isn't an instance | No | Yes | Yes | No | No | Yes[10] | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §WeakSet | 0/11 | 5/11 | 11/11 | 8/11 | 0/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 10/11 | 10/11 | 10/11 | 11/11 | 9/11 | 9/11 | 9/11 | 9/11 | 9/11 | 10/11 | 10/11 | 10/11 | 10/11 | 10/11 | 10/11 | 10/11 | 11/11 | 0/11 | 0/11 | 10/11 | 10/11 | 10/11 | 10/11 | 10/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 11/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 9/11 | 10/11 | 10/11 | 0/11 | 6/11 | 7/11 | 10/11 | 10/11 | 10/11 | 11/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 5/11 | 8/11 | 0/11 | 0/11 | 0/11 | 0/11 | 11/11 | 11/11 | ||
| §basic functionality | No | Yes | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §constructor arguments | No | No | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §constructor requires new | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §constructor accepts null | No | Yes | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §constructor invokes add | No | No | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §iterator closing | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §WeakSet.prototype.add returns this | No | Yes | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §WeakSet.prototype.delete | No | Yes | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §no WeakSet.prototype.clear method | No | No | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §.has and .delete methods accept primitives | No | No | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | ? | ? | ? | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §WeakSet.prototype isn't an instance | No | Yes | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §Proxy[17] | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 34/34 | 34/34 | 34/34 | 34/34 | 28/34 | 30/34 | 30/34 | 30/34 | 30/34 | 30/34 | 30/34 | 30/34 | 34/34 | 34/34 | 34/34 | 34/34 | 34/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 33/34 | 34/34 | 34/34 | 34/34 | 34/34 | 34/34 | 34/34 | 34/34 | 34/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 34/34 | 34/34 | 34/34 | 0/34 | 0/34 | 27/34 | 34/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 34/34 | 34/34 | 34/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 0/34 | 34/34 | ||
| §constructor requires new | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §no "prototype" property | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"get" handler | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"get" handler, instances of proxies | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"get" handler invariants | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"set" handler | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"set" handler, instances of proxies | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"set" handler invariants | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"has" handler | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"has" handler, instances of proxies | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"has" handler invariants | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"deleteProperty" handler | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"deleteProperty" handler invariant | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"getOwnPropertyDescriptor" handler | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"getOwnPropertyDescriptor" handler invariants | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"defineProperty" handler | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"defineProperty" handler invariants | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"getPrototypeOf" handler | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"getPrototypeOf" handler invariant | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"setPrototypeOf" handler | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"setPrototypeOf" handler invariant | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"isExtensible" handler | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"isExtensible" handler invariant | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"preventExtensions" handler | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"preventExtensions" handler invariant | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"ownKeys" handler | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"ownKeys" handler invariant | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No[0] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"apply" handler | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"apply" handler invariant | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"construct" handler | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §"construct" handler invariants | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Proxy.revocable | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.isArray support | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §JSON.stringify support | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect[18] | 0/20 | 0/20 | 14/20 | 14/20 | 0/20 | 18/20 | 14/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 13/20 | 20/20 | 20/20 | 20/20 | 0/20 | 16/20 | 16/20 | 17/20 | 20/20 | 19/20 | 19/20 | 19/20 | 20/20 | 20/20 | 20/20 | 20/20 | 20/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 20/20 | 20/20 | 20/20 | 20/20 | 20/20 | 20/20 | 20/20 | 20/20 | 20/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 20/20 | 20/20 | 20/20 | 0/20 | 0/20 | 14/20 | 16/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 20/20 | 20/20 | 20/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 0/20 | 20/20 | ||
| §Reflect.get | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.set | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.has | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.deleteProperty | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.getOwnPropertyDescriptor | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.defineProperty | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.getPrototypeOf | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.setPrototypeOf | No | No | No[13] | No[13] | No | No[13] | No[13] | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.isExtensible | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.preventExtensions | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.ownKeys, string keys | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.ownKeys, symbol keys | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.apply | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.construct | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.construct sets new.target meta-property | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.construct creates instances from third argument | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.construct, Array subclassing | No | No | No | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | ? | ? | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.construct, RegExp subclassing | No | No | No | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | ? | ? | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.construct, Function subclassing | No | No | No | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | ? | ? | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.construct, Promise subclassing | No | No | No | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | ? | ? | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Promise | 0/8 | 4/8 | 8/8 | 7/8 | 0/8 | 8/8 | 7/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 7/8 | 8/8 | 8/8 | 8/8 | 6/8 | 6/8 | 6/8 | 6/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 0/8 | 0/8 | 7/8 | 7/8 | 7/8 | 7/8 | 7/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 0/8 | 0/8 | 0/8 | 0/8 | 4/8 | 6/8 | 8/8 | 8/8 | 8/8 | 0/8 | 0/8 | 4/8 | 8/8 | 0/8 | 0/8 | 4/8 | 4/8 | 7/8 | 7/8 | 7/8 | 8/8 | 8/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 5/8 | 5/8 | 0/8 | 0/8 | 0/8 | 0/8 | 6/8 | 8/8 | ||
| §basic functionality | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §constructor requires new | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | No | Yes | ||
| §Promise.prototype isn't an instance | No | Yes | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §Promise.all | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §Promise.all, generic iterables | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Promise.race | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §Promise.race, generic iterables | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Promise[Symbol.species] | No | No | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol | 0/12 | 4/12 | 9/12 | 2/12 | 0/12 | 8/12 | 2/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 10/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 0/12 | 0/12 | 10/12 | 10/12 | 11/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 12/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 11/12 | 12/12 | 12/12 | 12/12 | 0/12 | 0/12 | 4/12 | 12/12 | 12/12 | 0/12 | 9/12 | 9/12 | 10/12 | 10/12 | 12/12 | 12/12 | 12/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 10/12 | 0/12 | 0/12 | 0/12 | 0/12 | 11/12 | 12/12 | ||
| §basic functionality | No | Yes | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §typeof support | No | Yes | Yes | No | No | No[7] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Object.defineProperty support | No | Yes | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §symbols inherit from Symbol.prototype | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §cannot coerce to string or number | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §can convert with String() | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §new Symbol() throws | No | Yes | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Object(symbol) | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §JSON.stringify ignores symbol primitives | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | ||
| §JSON.stringify ignores symbol objects | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §global symbol registry | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §well-known symbols[19] | 0/26 | 1/26 | 14/26 | 1/26 | 0/26 | 15/26 | 0/26 | 0/26 | 0/26 | 0/26 | 0/26 | 0/26 | 0/26 | 3/26 | 9/26 | 10/26 | 14/26 | 1/26 | 6/26 | 6/26 | 7/26 | 8/26 | 9/26 | 9/26 | 16/26 | 21/26 | 22/26 | 26/26 | 26/26 | 26/26 | 0/26 | 0/26 | 3/26 | 4/26 | 5/26 | 9/26 | 14/26 | 26/26 | 26/26 | 26/26 | 26/26 | 25/26 | 25/26 | 25/26 | 0/26 | 0/26 | 0/26 | 0/26 | 0/26 | 3/26 | 26/26 | 26/26 | 26/26 | 0/26 | 0/26 | 23/26 | 25/26 | 22/26 | 0/26 | 2/26 | 2/26 | 3/26 | 3/26 | 14/26 | 26/26 | 26/26 | 0/26 | 0/26 | 0/26 | 0/26 | 0/26 | 0/26 | 3/26 | 0/26 | 0/26 | 0/26 | 0/26 | 3/26 | 26/26 | ||
| §Symbol.hasInstance | No | No | Flag | No | No | No[7] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.isConcatSpreadable | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.iterator, existence | No | Yes | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Symbol.iterator, arguments object | No | 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 | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Symbol.species, existence | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.species, Array.prototype.concat | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.species, Array.prototype.filter | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.species, Array.prototype.map | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.species, Array.prototype.slice | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.species, Array.prototype.splice | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.species, RegExp.prototype[Symbol.split] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.species, Promise.prototype.then | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | ? | ? | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.replace | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.search | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.split | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.match | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.match, RegExp constructor | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Flag | Flag | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.match, String.prototype.startsWith | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Flag | Flag | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.match, String.prototype.endsWith | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Flag | Flag | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.match, String.prototype.includes | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Flag | Flag | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.toPrimitive | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.toStringTag | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Flag | Flag | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Flag | Flag | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.toStringTag affects existing built-ins | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Flag | Flag | Flag | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Flag | Flag | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.toStringTag, new built-ins | No | No | No | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.toStringTag, misc. built-ins | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Flag | Flag | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Flag | Flag | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Symbol.unscopables | No | No | No | No | No | No[7] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No[20] | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| Built-in extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| §Object static methods | 0/4 | 3/4 | 3/4 | 2/4 | 0/4 | 3/4 | 2/4 | 1/4 | 0/4 | 0/4 | 0/4 | 0/4 | 1/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 0/4 | 3/4 | 3/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 1/4 | 1/4 | 1/4 | 1/4 | 2/4 | 3/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | ||
| §Object.assign | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Object.is | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §Object.getOwnPropertySymbols | No | Yes | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Object.setPrototypeOf | No | No | No[13] | No[13] | No | No[13] | No[13] | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §function "name" property | 0/17 | 0/17 | 8/17 | 0/17 | 0/17 | 3/17 | 0/17 | 3/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 8/17 | 14/17 | 16/17 | 16/17 | 6/17 | 6/17 | 6/17 | 6/17 | 10/17 | 10/17 | 11/17 | 11/17 | 12/17 | 12/17 | 12/17 | 12/17 | 17/17 | 2/17 | 2/17 | 6/17 | 6/17 | 7/17 | 11/17 | 11/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 0/17 | 3/17 | 3/17 | 3/17 | 3/17 | 6/17 | 17/17 | 17/17 | 17/17 | 3/17 | 3/17 | 5/17 | 17/17 | 14/17 | 0/17 | 2/17 | 2/17 | 6/17 | 6/17 | 11/17 | 17/17 | 17/17 | 3/17 | 2/17 | 2/17 | 2/17 | 2/17 | 2/17 | 2/17 | 0/17 | 3/17 | 3/17 | 3/17 | 6/17 | 17/17 | ||
| §function statements | No | No | Yes | No | No | Yes[10] | No | Yes | No | No | No | No | No | 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 | 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 | No | Yes | Yes | Yes | Yes | Yes | ||
| §function expressions | No | No | Yes | No | No | Yes[10] | No | Yes | No | No | No | No | No | 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 | 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 | No | Yes | Yes | Yes | Yes | Yes | ||
| §new Function | No | No | No | No | No | No | No | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No[0] | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | ||
| §bound functions | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §variables (function) | No | No | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Flag | Flag | Flag | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §object methods (function) | No | No | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §accessor properties | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §shorthand methods | No | No | Yes | No | No | No | No | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §shorthand methods (no lexical binding) | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §symbol-keyed methods | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §class statements | No | No | No[21] | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §class expressions | No | No | No[21] | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §variables (class) | No | No | No[21] | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §object methods (class) | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §class prototype methods | No | No | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §class static methods | No | No | Yes | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §isn't writable, is configurable | No | No | No | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §String static methods | 0/2 | 2/2 | 2/2 | 1/2 | 0/2 | 2/2 | 2/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 | 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 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 2/2 | 2/2 | 2/2 | 2/2 | 0/2 | 0/2 | 2/2 | 2/2 | 2/2 | 0/2 | 0/2 | 0/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 | 2/2 | 2/2 | ||
| §String.raw | No | Yes | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §String.fromCodePoint | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §String.prototype methods | 0/10 | 8/10 | 9/10 | 7/10 | 0/10 | 9/10 | 7/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 9/10 | 10/10 | 10/10 | 10/10 | 8/10 | 9/10 | 9/10 | 9/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 0/10 | 0/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 9/10 | 10/10 | 10/10 | 10/10 | 0/10 | 0/10 | 9/10 | 10/10 | 10/10 | 0/10 | 1/10 | 1/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 1/10 | 2/10 | 0/10 | 0/10 | 0/10 | 0/10 | 9/10 | 10/10 | ||
| §String.prototype.codePointAt | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §String.prototype.normalize | No | No | No | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | No | Yes | ||
| §String.prototype.repeat | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §String.prototype.startsWith | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §String.prototype.startsWith throws on RegExp | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §String.prototype.endsWith | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §String.prototype.endsWith throws on RegExp | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §String.prototype.includes | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No[22] | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag[22] | Flag[22] | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No[22] | No[22] | No[22] | No | No | No | No | Yes | Yes | ||
| §String.prototype[Symbol.iterator] | No | Yes | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §String iterator prototype chain | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §RegExp.prototype properties | 0/6 | 0/6 | 6/6 | 0/6 | 0/6 | 6/6 | 1/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 1/6 | 1/6 | 1/6 | 1/6 | 1/6 | 1/6 | 1/6 | 1/6 | 1/6 | 1/6 | 1/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 1/6 | 5/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 1/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 6/6 | 6/6 | 5/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 5/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 1/6 | 6/6 | ||
| §RegExp.prototype.flags | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | No | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §RegExp.prototype[Symbol.match] | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp.prototype[Symbol.replace] | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp.prototype[Symbol.split] | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp.prototype[Symbol.search] | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp[Symbol.species] | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array static methods | 0/11 | 10/11 | 11/11 | 5/11 | 0/11 | 9/11 | 7/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 7/11 | 10/11 | 10/11 | 11/11 | 10/11 | 10/11 | 10/11 | 10/11 | 10/11 | 10/11 | 10/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 9/11 | 9/11 | 9/11 | 9/11 | 9/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 8/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 6/11 | 11/11 | 8/11 | 0/11 | 0/11 | 0/11 | 9/11 | 9/11 | 9/11 | 11/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 8/11 | 11/11 | ||
| §Array.from, array-like objects | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array.from, generator instances | No | Yes | Yes | Yes | No | No[7] | Yes | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.from, generic iterables | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array.from, instances of generic iterables | No | Yes | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array.from map function, array-like objects | No | Yes | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array.from map function, generator instances | No | Yes | Yes | No | No | No[7] | Yes | No | No | No | No | No | No | Flag | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.from map function, generic iterables | No | Yes | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array.from map function, instances of iterables | No | Yes | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array.from, iterator closing | No | Yes | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array.of | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array[Symbol.species] | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype methods | 0/10 | 7/10 | 10/10 | 8/10 | 0/10 | 10/10 | 7/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 9/10 | 10/10 | 10/10 | 10/10 | 7/10 | 7/10 | 7/10 | 7/10 | 8/10 | 8/10 | 8/10 | 10/10 | 9/10 | 9/10 | 9/10 | 9/10 | 9/10 | 0/10 | 0/10 | 8/10 | 8/10 | 8/10 | 8/10 | 8/10 | 10/10 | 9/10 | 9/10 | 9/10 | 9/10 | 9/10 | 9/10 | 0/10 | 0/10 | 0/10 | 0/10 | 5/10 | 10/10 | 10/10 | 10/10 | 10/10 | 0/10 | 0/10 | 9/10 | 10/10 | 10/10 | 0/10 | 5/10 | 5/10 | 8/10 | 8/10 | 8/10 | 10/10 | 9/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 4/10 | 0/10 | 0/10 | 0/10 | 0/10 | 10/10 | 10/10 | ||
| §Array.prototype.copyWithin | No | No | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array.prototype.find | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array.prototype.findIndex | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array.prototype.fill | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Flag | Flag | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array.prototype.keys | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Array.prototype.values | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No[23] | No[23] | No[23] | No[23] | No[23] | No[23] | No[23] | Yes | No[24] | No[24] | No[24] | No[24] | No[24] | No | No | No[23] | No[23] | No[23] | No[23] | No[23] | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | No | No | No[23] | Yes | No | No | No | No | No | No | No | No[23] | No | No | No | No | Yes | Yes | ||
| §Array.prototype.entries | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Array.prototype[Symbol.iterator] | No | Yes | Yes | Yes | No | Yes[10] | No | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Array iterator prototype chain | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array.prototype[Symbol.unscopables] | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Number properties | 0/7 | 7/7 | 7/7 | 7/7 | 0/7 | 7/7 | 7/7 | 6/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 0/7 | 0/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 0/7 | 0/7 | 0/7 | 0/7 | 0/7 | 7/7 | 7/7 | 7/7 | 7/7 | 0/7 | 0/7 | 7/7 | 7/7 | 7/7 | 0/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 0/7 | 2/7 | 2/7 | 2/7 | 2/7 | 7/7 | 7/7 | 0/7 | 0/7 | 0/7 | 0/7 | 7/7 | 7/7 | ||
| §Number.isFinite | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §Number.isInteger | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §Number.isSafeInteger | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §Number.isNaN | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §Number.EPSILON | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §Number.MIN_SAFE_INTEGER | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §Number.MAX_SAFE_INTEGER | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | No | No | No | No | Yes | Yes | ||
| §Math methods | 0/17 | 17/17 | 17/17 | 15/17 | 0/17 | 17/17 | 17/17 | 14/17 | 0/17 | 0/17 | 0/17 | 0/17 | 0/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 0/17 | 0/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 0/17 | 0/17 | 0/17 | 1/17 | 15/17 | 17/17 | 17/17 | 17/17 | 17/17 | 0/17 | 0/17 | 17/17 | 17/17 | 17/17 | 0/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 17/17 | 0/17 | 0/17 | 0/17 | 0/17 | 1/17 | 1/17 | 17/17 | 0/17 | 0/17 | 1/17 | 1/17 | 17/17 | 17/17 | ||
| §Math.clz32 | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.imul | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | ||
| §Math.sign | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.log10 | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.log2 | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.log1p | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.expm1 | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.cosh | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.sinh | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.tanh | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.acosh | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.asinh | No | Yes | Yes | Yes | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.atanh | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.trunc | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.fround | No | Yes | Yes | No | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.cbrt | No | Yes | Yes | Yes | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Math.hypot | No | Yes | Yes | No | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | No | No | No | No | Yes | Yes | ||
| §Date.prototype[Symbol.toPrimitive] | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| Subclassing | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| §Array is subclassable | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 6/11 | 6/11 | 6/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 6/11 | 6/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 3/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 6/11 | 11/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 3/11 | 11/11 | ||
| §length property (accessing) | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §length property (setting) | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §correct prototype chain | No | No | No[13] | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.isArray support | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Array.prototype.concat | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.filter | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.map | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.slice | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.splice | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.from | No | No[13] | No[13] | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.of | No | No[13] | No[13] | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp is subclassable | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 3/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/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 | 3/4 | 4/4 | ||
| §basic functionality | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §correct prototype chain | No | No | No[13] | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp.prototype.exec | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §RegExp.prototype.test | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Function is subclassable | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | ||
| §can be called | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §correct prototype chain | No | No | No[13] | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §can be used with "new" | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Function.prototype.call | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Function.prototype.apply | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Function.prototype.bind | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Promise is subclassable | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 2/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/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 | 4/4 | ||
| §basic functionality | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §correct prototype chain | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Promise.all | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Promise.race | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §miscellaneous subclassables | 0/6 | 0/6 | 0/6 | 2/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | ||
| §Boolean is subclassable | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Number is subclassable | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §String is subclassable | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Error is subclassable | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Map is subclassable | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Set is subclassable | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Strict | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| Misc | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| §prototype of bound functions | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 0/5 | 0/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 3/5 | 3/5 | 3/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 4/5 | 5/5 | 3/5 | 0/5 | 0/5 | 0/5 | 0/5 | 3/5 | 5/5 | 5/5 | 5/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 5/5 | ||
| §basic functions | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §generator functions | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §arrow functions | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §classes | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §subclasses | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Strict | Strict | Strict | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | Strict | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Proxy, internal 'get' calls | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 14/36 | 19/36 | 20/36 | 20/36 | 17/36 | 18/36 | 18/36 | 20/36 | 22/36 | 24/36 | 24/36 | 27/36 | 35/36 | 36/36 | 36/36 | 36/36 | 36/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 21/36 | 25/36 | 36/36 | 36/36 | 36/36 | 36/36 | 36/36 | 35/36 | 35/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 36/36 | 36/36 | 36/36 | 0/36 | 0/36 | 19/36 | 35/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 25/36 | 36/36 | 36/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 0/36 | 36/36 | ||
| §ToPrimitive | 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 | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §CreateListFromArrayLike | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §instanceof 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 | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §HasBinding | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No[20] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §CreateDynamicFunction | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §ClassDefinitionEvaluation | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §IteratorComplete, IteratorValue | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §ToPropertyDescriptor | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Object.assign | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Object.defineProperties | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Function.prototype.bind | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Error.prototype.toString | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §String.raw | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp constructor | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag | Flag | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp.prototype.flags | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag | Flag | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp.prototype.test | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp.prototype.toString | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag | Flag | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | ? | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp.prototype[Symbol.match] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp.prototype[Symbol.replace] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp.prototype[Symbol.search] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp.prototype[Symbol.split] | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.from | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.concat | 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 | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype iteration methods | No | No | No | No | 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 | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.pop | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.reverse | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.shift | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.splice | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Flag | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.toString | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §JSON.stringify | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Promise resolve functions | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §String.prototype.match | No | 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 | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §String.prototype.replace | No | 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 | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §String.prototype.search | No | 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 | Yes | Yes | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | No | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §String.prototype.split | No | 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 | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Date.prototype.toJSON | 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 | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Proxy, internal 'set' calls | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 11/11 | 11/11 | 11/11 | 11/11 | 5/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 3/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 11/11 | 11/11 | 11/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 0/11 | 11/11 | ||
| §Object.assign | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.from | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.of | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.copyWithin | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.fill | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.pop | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.push | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.reverse | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.shift | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.splice | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.unshift | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Proxy, internal 'defineProperty' 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 | 2/2 | 2/2 | 2/2 | 2/2 | 2/2 | 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 | 0/2 | 0/2 | 0/2 | 2/2 | 2/2 | 2/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 | 2/2 | 2/2 | 2/2 | 0/2 | 0/2 | 0/2 | 2/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/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 | 2/2 | ||
| §[[Set]] | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §SetIntegrityLevel | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Proxy, internal 'deleteProperty' calls | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 1/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | ||
| §Array.prototype.copyWithin | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.pop | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.reverse | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.shift | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.splice | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Array.prototype.unshift | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Proxy, internal 'getOwnPropertyDescriptor' calls | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/4 | 4/4 | 4/4 | 0/4 | 0/4 | 2/4 | 4/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 0/4 | 4/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 | 4/4 | ||
| §[[Set]] | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Object.assign | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Object.prototype.hasOwnProperty | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Function.prototype.bind | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Proxy, internal 'ownKeys' calls | 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 | 2/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 3/3 | 3/3 | 3/3 | 0/3 | 0/3 | 3/3 | 3/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 | 0/3 | 3/3 | ||
| §SetIntegrityLevel | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §TestIntegrityLevel | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §SerializeJSONObject | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Object static methods accept primitives | 0/10 | 0/10 | 10/10 | 0/10 | 0/10 | 10/10 | 10/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 0/10 | 0/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 10/10 | 10/10 | 10/10 | 10/10 | 0/10 | 0/10 | 9/10 | 10/10 | 10/10 | 0/10 | 0/10 | 0/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 0/10 | 10/10 | 10/10 | ||
| §Object.getPrototypeOf | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Object.getOwnPropertyDescriptor | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Object.getOwnPropertyNames | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Object.seal | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Object.freeze | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Object.preventExtensions | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Object.isSealed | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Object.isFrozen | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Object.isExtensible | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Object.keys | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | 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 | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §own property order | 0/7 | 0/7 | 1/7 | 0/7 | 0/7 | 1/7 | 1/7 | 0/7 | 0/7 | 0/7 | 0/7 | 4/7 | 4/7 | 7/7 | 7/7 | 7/7 | 7/7 | 2/7 | 3/7 | 3/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 4/7 | 4/7 | 3/7 | 3/7 | 3/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 7/7 | 0/7 | 2/7 | 2/7 | 3/7 | 4/7 | 5/7 | 7/7 | 7/7 | 7/7 | 0/7 | 2/7 | 3/7 | 7/7 | 5/7 | 0/7 | 3/7 | 3/7 | 3/7 | 3/7 | 7/7 | 7/7 | 7/7 | 3/7 | 3/7 | 3/7 | 3/7 | 3/7 | 3/7 | 3/7 | 0/7 | 2/7 | 3/7 | 3/7 | 5/7 | 7/7 | ||
| §Object.keys | No | 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 | 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 | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §Object.getOwnPropertyNames | No | No | No | No | No | No | No | No | No | No | No | Yes[0] | Yes[0] | Yes[0] | Yes[0] | Yes[0] | Yes[0] | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Object.assign | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes[0] | Yes[0] | Yes[0] | Yes[0] | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §JSON.stringify | No | No | No | No | No | No | No | No | No | No | No | Yes[0] | Yes[0] | Yes[0] | Yes[0] | Yes[0] | Yes[0] | No | 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 | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | ||
| §JSON.parse | No | No | No | No | No | No | No | No | No | No | No | Yes[25] | Yes[25] | Yes[25] | Yes[25] | Yes[25] | Yes[25] | Yes | Yes | Yes | 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 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §Reflect.ownKeys, string key order | No | No | No[26] | No[26] | No | No[26] | No[26] | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Reflect.ownKeys, symbol key order | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §miscellaneous | 1/10 | 1/10 | 6/10 | 3/10 | 1/10 | 6/10 | 2/10 | 1/10 | 0/10 | 0/10 | 0/10 | 3/10 | 3/10 | 7/10 | 7/10 | 7/10 | 8/10 | 5/10 | 8/10 | 8/10 | 8/10 | 8/10 | 8/10 | 8/10 | 8/10 | 8/10 | 8/10 | 8/10 | 9/10 | 10/10 | 3/10 | 3/10 | 6/10 | 6/10 | 6/10 | 8/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 10/10 | 0/10 | 2/10 | 2/10 | 2/10 | 2/10 | 5/10 | 10/10 | 10/10 | 10/10 | 2/10 | 2/10 | 5/10 | 8/10 | 9/10 | 0/10 | 2/10 | 2/10 | 5/10 | 5/10 | 10/10 | 10/10 | 10/10 | 2/10 | 2/10 | 2/10 | 2/10 | 2/10 | 2/10 | 2/10 | 0/10 | 2/10 | 2/10 | 2/10 | 5/10 | 10/10 | ||
| §no escaped reserved words as identifiers | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | 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 | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §duplicate property names in strict mode | No | No | No | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §no semicolon needed after do-while | No | No | Yes | Yes | No | Yes | No | No | No | 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 | No | 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 | No | Yes | Yes | Yes | Yes | Yes | ||
| §no assignments allowed in for-in head in strict mode | No | No | Yes | Yes | No | Yes | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §accessors aren't constructors | No | No | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | 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 | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §Invalid Date | No | No | Yes | No | No | Yes[10] | Yes | Yes | No | 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 | No | 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 | No | Yes | Yes | Yes | Yes | Yes | ||
| §RegExp constructor can alter flags | No | No | Yes | No | No | Yes[10] | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp.prototype.toString generic and uses "flags" property | No | No | Yes | No | No | Yes[10] | No | No | No | No | No | No | No | No | No | Flag | Flag | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | ? | ? | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §built-in prototypes are not instances | No | No | No | No | No | No | No | No | No | No | No | No | No | No | No | Flag | Flag | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | 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 | Yes | ||
| §function 'length' is configurable | No | No | No | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| Annex b | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| §non-strict function semantics[27] | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 0/3 | 2/3 | 0/3 | 0/3 | 0/3 | 2/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 2/3 | 2/3 | 2/3 | 2/3 | 2/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 0/3 | 2/3 | 2/3 | 2/3 | 2/3 | 2/3 | 3/3 | 3/3 | 3/3 | 3/3 | 2/3 | 0/3 | 2/3 | 3/3 | 0/3 | 2/3 | 2/3 | 2/3 | 2/3 | 3/3 | 3/3 | 3/3 | 2/3 | 2/3 | 2/3 | 2/3 | 2/3 | 2/3 | 2/3 | 0/3 | 2/3 | 2/3 | 2/3 | 2/3 | 3/3 | ||
| §hoisted block-level function declaration | No | No | No | 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 | No | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | No | No | No | No | No | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §labeled function statements | No | No | No | No | No | No | No | Yes | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §function statements in if-statement clauses | No | No | No | No | No | No | No | Yes | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §__proto__ in object literals[28] | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 0/5 | 1/5 | 0/5 | 0/5 | 0/5 | 0/5 | 1/5 | 3/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 1/5 | 1/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 0/5 | 1/5 | 1/5 | 1/5 | 2/5 | 5/5 | 5/5 | 5/5 | 5/5 | 1/5 | 1/5 | 0/5 | 5/5 | 5/5 | 0/5 | 1/5 | 1/5 | 5/5 | 5/5 | 5/5 | 5/5 | 5/5 | 1/5 | 1/5 | 1/5 | 1/5 | 1/5 | 1/5 | 1/5 | 0/5 | 1/5 | 1/5 | 1/5 | 5/5 | 5/5 | ||
| §basic support | No | No | No | No | No | No | No | Yes | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §multiple __proto__ is an error | No | No | No | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §not a computed property | No | No | No | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §not a shorthand property | No | No | No | No | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §not a shorthand method | No | No | No | No | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | Yes | Yes | ||
| §Object.prototype.__proto__ | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 0/6 | 3/6 | 0/6 | 0/6 | 0/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 5/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 0/6 | 3/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 4/6 | 6/6 | 2/6 | 6/6 | 6/6 | 0/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 6/6 | 3/6 | 2/6 | 2/6 | 2/6 | 6/6 | 6/6 | 6/6 | 0/6 | 3/6 | 6/6 | 6/6 | 6/6 | 6/6 | ||
| §get prototype | No | No | No | No | No | No | No | Yes | No | No | 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 | No | 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 | No | Yes | Yes | Yes | Yes | Yes | ||
| §set prototype | No | No | No | No | No | No | No | Yes | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §absent from Object.create(null) | No | No | No | 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 | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | ||
| §present in hasOwnProperty() | No | No | No | No | No | No | No | Yes | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §correct property descriptor | No | No | No | 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 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | ||
| §present in Object.getOwnPropertyNames() | No | 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 | 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 | No | Yes | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | ||
| §String.prototype HTML methods | 0/3 | 0/3 | 3/3 | 0/3 | 0/3 | 3/3 | 3/3 | 3/3 | 0/3 | 0/3 | 0/3 | 1/3 | 1/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 2/3 | 2/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 0/3 | 2/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 0/3 | 0/3 | 3/3 | 0/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 3/3 | 0/3 | 2/3 | 3/3 | 3/3 | 3/3 | 3/3 | ||
| §existence | No | No | Yes | No | No | Yes[10] | Yes | Yes | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §tags' names are lowercase | No | No | Yes | No | No | Yes[10] | Yes | Yes | No | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §quotes in arguments are escaped | No | No | Yes | No | No | Yes[10] | Yes | Yes | No | No | No | No | No | 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 | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | Yes | ||
| §RegExp.prototype.compile | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 0/2 | 1/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 | 0/2 | 0/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 0/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 2/2 | 2/2 | 2/2 | 1/2 | 1/2 | 0/2 | 1/2 | 0/2 | 0/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 1/2 | 0/2 | 1/2 | 1/2 | 1/2 | 1/2 | 2/2 | ||
| §basic functionality | No | No | No | No | No | No | No | Yes | No | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §returns this | No | 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 | Yes | 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 | No | No | No | No | No | No | No | No | No | No | No | No | Yes | ||
| §RegExp syntax extensions | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 0/8 | 8/8 | 0/8 | 0/8 | 0/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 6/8 | 6/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 0/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 4/8 | 5/8 | 8/8 | 0/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 0/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | ||
| §hyphens in character sets | No | No | No | No | No | No | No | Yes | No | 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 | No | 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 | No | Yes | Yes | Yes | Yes | Yes | ||
| §invalid character escapes | No | No | No | No | No | No | No | Yes | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §invalid control-character escapes | No | No | No | No | No | No | No | Yes | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §invalid Unicode escapes | No | No | No | No | No | No | No | Yes | No | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §invalid hexadecimal escapes | No | No | No | No | No | No | No | Yes | No | No | No | 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 | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
| §incomplete patterns and quantifiers | No | No | No | No | No | No | No | Yes | No | 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 | No | 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 | No | Yes | Yes | Yes | Yes | Yes | ||
| §octal escape sequences | No | No | No | No | No | No | No | Yes | No | 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 | No | 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 | No | Yes | Yes | Yes | Yes | Yes | ||
| §invalid backreferences become octal escapes | No | No | No | No | No | No | No | Yes | No | 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 | No | 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 | No | Yes | Yes | Yes | Yes | Yes | ||
| §HTML-style comments | No | No | No | No | No | No | No | Yes | 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 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | ||
__createIterableObject(), used in the numerous "generic iterables" tests, is defined as:
[1] Flagged features have to be enabled via "Experimental Javascript features" flag
[2] Flagged features require an optional transformer setting.
[3] Results are only applicable for the KHTML rendering engine.
[4] Flagged features have to be enabled via "Enable experimental Javascript features" setting under about:flags
[5] Flagged features have to be enabled via --harmony or --es_staging flag
[6] Requires the properTailCalls compile option.
[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 compiler requires generic iterables have either a Symbol.iterator or non-standard "@@iterator" method.
[9] Firefox incorrectly produces an error in strict mode if the method is named "arguments", "eval", or "delete".
[10] This feature is supported when using TypeScript with core-js, or when a native ES6 host is used.
[11] Available for code in a <script type="application/javascript;version=1.7"> (or version=1.8) tag.
[12] Note that prior to ES6, it was recommended that ES5 implementations forbid block-level declarations in strict mode.
[13] Requires native support for Object.prototype.__proto__
[14] This compiler transforms extends into code that copies properties from the superclass, instead of using the prototype chain.
[15] TypeScript transforms extends into code that copies static properties from the superclass (but uses the prototype chain for instance properties).
[16] This feature requires native generators or regenerator-runtime, it's a part of babel-polyfill or babel-runtime.
[17] The 2015 version of the specification also specifies an "enumerate" handler, which was removed in the 2016 version.
[18] The 2015 version of the specification also specifies Reflect.enumerate, which was removed in the 2016 version.
[19] Functionality for Symbol.iterator is tested by the "generic iterators" subtests for the spread (...) operator, for..of loops, destructuring, yield *, and Array.from.
[20] with is not supported in ejs
[21] Requires function "name" properties to be natively configurable
[22] Available as the draft standard String.prototype.contains
[23] Available as Array.prototype[Symbol.iterator]
[24] The feature is enabled by default only in Firefox Nightly due to compatibility issue.
[25] Unlike other engines, Chakra sorts properties removed by delete, then recreated by assignment, to their original creation positions, not their latest positions.
[26] This uses native for-in enumeration order, rather than the correct order.
[27] The 2015 version of the specification contains multiple bugs for hoisted block-level function declaration semantics, which these tests disregard.
[28] Note that this is distinct from the existence or functionality of Object.prototype.__proto__.