From e0cdb735df5f61e1dd0ce1af1f7fedf11035696e Mon Sep 17 00:00:00 2001 From: Denis Pushkarev Date: Mon, 9 Dec 2019 01:24:58 +0700 Subject: [PATCH] Revert "Revert "Improve historical Node data"" --- environments.json | 450 ++++++++++++++++++---------------------- es2016plus/index.html | 42 ++-- es5/index.html | 58 +++--- es6/index.html | 112 +++++----- esintl/index.html | 86 ++++---- esnext/index.html | 42 ++-- non-standard/index.html | 160 +++++++------- 7 files changed, 454 insertions(+), 496 deletions(-) diff --git a/environments.json b/environments.json index 8f123dc470..8ed75a9143 100644 --- a/environments.json +++ b/environments.json @@ -2431,82 +2431,216 @@ "es6" ] }, + "node0_7": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.7.0-0.7.2", + "equals": "chrome18", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2012-01-17", + "obsolete": "very" + }, + "node0_7_3": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.7.3-0.7.10", + "equals": "chrome19", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2012-02-07", + "obsolete": "very" + }, + "node0_7_11": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.7.11-0.7.12", + "equals": "chrome21", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2012-06-15", + "obsolete": "very" + }, + "node0_8": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.8", + "equals": "chrome21", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2012-06-22", + "obsolete": "very" + }, + "node0_9": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.9.0-0.9.2", + "equals": "chrome21", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2012-07-20", + "obsolete": "very" + }, + "node0_9_3": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.9.3-0.9.5", + "equals": "chrome23", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2012-10-24", + "obsolete": "very" + }, + "node0_9_6": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.9.6-0.9.12", + "equals": "chrome24", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2013-01-11", + "obsolete": "very" + }, "node0_10": { "full": "Node.js", "family": "Node.js", "short": "Node 0.10", - "equals": "chrome14", + "equals": "chrome24", "platformtype": "engine", "note_id": "harmony-flag-old", "note_html": "Flagged features have to be enabled via --harmony flag", "release": "2013-03-11", "retire": "2016-10-31", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, - "node0_12": { + "node0_11": { "full": "Node.js", "family": "Node.js", - "short": "Node 0.12", + "short": "Node 0.11.0", + "equals": "chrome27", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2013-03-28", + "obsolete": "very" + }, + "node0_11_1": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.11.1", "equals": "chrome28", "platformtype": "engine", "note_id": "harmony-flag", "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", - "release": "2015-02-06", - "retire": "2016-12-31", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "release": "2013-04-19", + "obsolete": "very" }, - "iojs1": { - "full": "io.js", + "node0_11_2": { + "full": "Node.js", "family": "Node.js", - "short": "io.js 1", + "short": "Node 0.11.2-0.11.3", + "equals": "chrome29", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2013-05-13", + "obsolete": "very" + }, + "node0_11_4": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.11.4-0.11.7", + "equals": "chrome30", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2013-07-12", + "obsolete": "very" + }, + "node0_11_8": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.11.8", "equals": "chrome31", "platformtype": "engine", "note_id": "harmony-flag", - "release": "2014-01-15", - "retire": "2014-02-03", - "obsolete": "very", - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl" - ] + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2013-10-30", + "obsolete": "very" + }, + "node0_11_9": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.11.9-0.11.12", + "equals": "chrome32", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2013-11-21", + "obsolete": "very" }, - "iojs1_1": { + "node0_11_13": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.11.13", + "equals": "chrome35", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2014-05-02", + "obsolete": "very" + }, + "node0_11_14": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.11.14", + "equals": "chrome36", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2014-08-19", + "obsolete": "very" + }, + "node0_11_15": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.11.15-0.11.16", + "equals": "chrome38", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2015-01-20", + "obsolete": "very" + }, + "node0_12": { + "full": "Node.js", + "family": "Node.js", + "short": "Node 0.12", + "equals": "chrome38", + "platformtype": "engine", + "note_id": "harmony-flag", + "note_html": "Flagged features have to be enabled via --harmony or --es_staging flag", + "release": "2015-02-06", + "retire": "2016-12-31", + "obsolete": true + }, + "iojs1": { "full": "io.js", "family": "Node.js", - "short": "io.js >=1.1 <2", + "short": "io.js 1", "equals": "chrome41", "platformtype": "engine", "note_id": "harmony-flag", - "release": "2014-02-03", + "release": "2014-01-15", "retire": "2015-05-04", - "obsolete": "very", - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": "very" }, "iojs2": { "full": "io.js", @@ -2516,15 +2650,7 @@ "platformtype": "engine", "note_id": "harmony-flag", "release": "2015-05-04", - "obsolete": "very", - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": "very" }, "iojs3": { "full": "io.js", @@ -2535,15 +2661,7 @@ "note_id": "harmony-flag", "release": "2015-08-04", "retire": "2015-09-08", - "obsolete": "very", - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": "very" }, "node4": { "full": "Node.js", @@ -2554,15 +2672,7 @@ "note_id": "harmony-flag", "release": "2015-09-08", "retire": "2018-04-01", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, "node5": { "full": "Node.js", @@ -2573,15 +2683,7 @@ "note_id": "harmony-flag", "release": "2015-10-29", "retire": "2016-04-26", - "obsolete": "very", - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": "very" }, "node6": { "full": "Node.js", @@ -2592,15 +2694,7 @@ "equals": "chrome50", "release": "2016-04-26", "retire": "2016-08-16", - "obsolete": "very", - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": "very" }, "node6_5": { "full": "Node.js", @@ -2611,15 +2705,7 @@ "equals": "chrome51", "release": "2016-08-16", "retire": "2019-04-18", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, "node7": { "full": "Node.js", @@ -2630,15 +2716,7 @@ "equals": "chrome54", "release": "2016-10-25", "retire": "2017-02-21", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, "node7_6": { "full": "Node.js", @@ -2649,15 +2727,7 @@ "equals": "chrome55", "release": "2017-02-21", "retire": "2017-05-30", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, "node8": { "full": "Node.js", @@ -2668,15 +2738,7 @@ "equals": "chrome58", "release": "2017-05-30", "retire": "2017-08-08", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, "node8_3": { "full": "Node.js", @@ -2686,15 +2748,7 @@ "note_id": "harmony-flag", "equals": "chrome60", "release": "2017-08-08", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, "node8_7": { "full": "Node.js", @@ -2704,15 +2758,7 @@ "note_id": "harmony-flag", "equals": "chrome61", "release": "2017-10-11", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, "node8_10": { "full": "Node.js", @@ -2723,15 +2769,7 @@ "equals": "chrome62", "release": "2018-03-07", "retire": "2019-12-31", - "unstable": false, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "unstable": false }, "node10_0": { "full": "Node.js", @@ -2741,15 +2779,7 @@ "note_id": "harmony-flag", "equals": "chrome66", "release": "2018-04-24", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, "node10_4": { "full": "Node.js", @@ -2759,15 +2789,7 @@ "note_id": "harmony-flag", "equals": "chrome67", "release": "2018-06-06", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, "node10_9": { "full": "Node.js", @@ -2778,15 +2800,7 @@ "equals": "chrome68", "release": "2018-08-15", "retire": "2021-04-30", - "obsolete": false, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": false }, "node11_0": { "full": "Node.js", @@ -2796,15 +2810,7 @@ "note_id": "harmony-flag", "equals": "chrome70", "release": "2018-10-23", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, "node12_0": { "full": "Node.js", @@ -2814,15 +2820,7 @@ "note_id": "harmony-flag", "equals": "chrome74", "release": "2019-04-23", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, "node12_5": { "full": "Node.js", @@ -2832,15 +2830,7 @@ "note_id": "harmony-flag", "equals": "chrome75", "release": "2019-06-26", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, "node12_9": { "full": "Node.js", @@ -2850,15 +2840,7 @@ "note_id": "harmony-flag", "equals": "chrome76", "release": "2019-08-20", - "obsolete": true, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": true }, "node12_11": { "full": "Node.js", @@ -2869,15 +2851,7 @@ "equals": "chrome77", "release": "2019-09-25", "retire": "2022-04-30", - "obsolete": false, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": false }, "node13_0": { "full": "Node.js", @@ -2887,15 +2861,7 @@ "note_id": "harmony-flag", "equals": "chrome78", "release": "2019-10-22", - "obsolete": false, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": false }, "node13_2": { "full": "Node.js", @@ -2905,15 +2871,7 @@ "note_id": "harmony-flag", "equals": "chrome79", "release": "2019-11-21", - "obsolete": false, - "test_suites": [ - "es5", - "es6", - "es2016plus", - "esnext", - "esintl", - "non-standard" - ] + "obsolete": false }, "duktape1_0": { "full": "Duktape 1.0", diff --git a/es2016plus/index.html b/es2016plus/index.html index 919edcfec5..b148b0179d 100644 --- a/es2016plus/index.html +++ b/es2016plus/index.html @@ -182,26 +182,26 @@ SF TP WK PJS -Node 0.10[1] -Node 0.12[2] -Node 4[2] -Node >=6.5 <7[2] -Node 7.0-7.5[2] -Node >=7.6 <8[2] -Node >=8.0 <8.3[2] -Node >=8.3 <8.7[2] -Node >=8.7 <8.10[2] -Node >=8.10 <9[2] -Node >=10.0 <10.4[2] -Node >=10.4 <10.9[2] -Node >=10.9 <11[2] -Node 11[2] -Node 12.0-12.4[2] -Node 12.5-12.8[2] -Node 12.9-12.10[2] -Node >=12.11 <13[2] -Node 13.0-13.1[2] -Node 13.2+[2] +Node 0.10[2] +Node 0.12[1] +Node 4[1] +Node >=6.5 <7[1] +Node 7.0-7.5[1] +Node >=7.6 <8[1] +Node >=8.0 <8.3[1] +Node >=8.3 <8.7[1] +Node >=8.7 <8.10[1] +Node >=8.10 <9[1] +Node >=10.0 <10.4[1] +Node >=10.4 <10.9[1] +Node >=10.9 <11[1] +Node 11[1] +Node 12.0-12.4[1] +Node 12.5-12.8[1] +Node 12.9-12.10[1] +Node >=12.11 <13[1] +Node 13.0-13.1[1] +Node 13.2+[1] DUK 2.0 DUK 2.1 DUK 2.2 @@ -16961,7 +16961,7 @@
-

[1] Flagged features have to be enabled via --harmony flag

[2] Flagged features have to be enabled via --harmony or --es_staging flag

[3] Executed in Node.js/JVM mode via graalvm/bin/node --jvm.

[4] The feature have to be enabled via "Experimental Javascript features" setting under about:flags

[5] This feature is supported when using Babel with core-js.

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

[7] TC39 meeting notes from July 28, 2015.

[8] 'Semantics of yield* in throw case' GitHub issue in ECMA-262 repo.

[9] Requires the downlevelIteration compile option.

[10] TC39 meeting notes from July 29, 2015.

[11] TC39 meeting notes from July 28, 2015.

[12] TC39 meeting notes from July 28, 2015.

[13] 'Normative: Remove [[Enumerate]] and associated reflective capabilities' GitHub Pull Request in ECMA-262 repo.

[14] This feature requires native generators or regenerator-runtime, it's a part of babel-polyfill or babel-runtime.

[15] Flagged features have to be enabled via "Enable experimental Javascript features" setting under about:flags

[16] The feature was temporarily disabled to mitigate the Meltdown and Spectre CPU bugs.

[17] The feature was temporarily disabled to mitigate the Meltdown and Spectre CPU bugs. It can be enabled via javascript.options.shared_memory setting under about:config

[18] The feature is available only in Firefox Nightly builds.

[19] The feature was temporarily disabled to mitigate the Meltdown and Spectre CPU bugs.

[20] The feature have to be enabled via "Experimental enabled SharedArrayBuffer support in JavaScript." setting under about:flags

[21] The feature was temporarily disabled to mitigate the Meltdown and Spectre CPU bugs.

[22] The feature have to be enabled via --js-flags="--harmony" flag

[23] Requires native support for Object.assign

[24] The feature is considered unstable, but can be enabled via --js-flags="--harmony-promise-finally" flag

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

[26] Requires native support for String.prototype.trimLeft.

[27] Requires native support for String.prototype.trimRight.

[28] Name of Array.prototype.flatten() changed to Array.prototype.flat() due to web compatibility issues.

[29] Older Firefox Nightly builds support only the obsolete draft function name Array.prototype.flatten().

[30] The feature have to be enabled via javascript.options.bigint setting under about:config.

[31] The feature have to be enabled via --js-flags="--harmony-optional-chaining" flag

[32] The feature has to be enabled via JSC runtime flag: __XPC_JSC_useNullishAwareOperators=true open -a 'Safari Technology Preview'.

[33] The feature have to be enabled via --js-flags="--harmony-nullish" flag

+

[1] Flagged features have to be enabled via --harmony or --es_staging flag

[2] Flagged features have to be enabled via --harmony flag

[3] Executed in Node.js/JVM mode via graalvm/bin/node --jvm.

[4] The feature have to be enabled via "Experimental Javascript features" setting under about:flags

[5] This feature is supported when using Babel with core-js.

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

[7] TC39 meeting notes from July 28, 2015.

[8] 'Semantics of yield* in throw case' GitHub issue in ECMA-262 repo.

[9] Requires the downlevelIteration compile option.

[10] TC39 meeting notes from July 29, 2015.

[11] TC39 meeting notes from July 28, 2015.

[12] TC39 meeting notes from July 28, 2015.

[13] 'Normative: Remove [[Enumerate]] and associated reflective capabilities' GitHub Pull Request in ECMA-262 repo.

[14] This feature requires native generators or regenerator-runtime, it's a part of babel-polyfill or babel-runtime.

[15] Flagged features have to be enabled via "Enable experimental Javascript features" setting under about:flags

[16] The feature was temporarily disabled to mitigate the Meltdown and Spectre CPU bugs.

[17] The feature was temporarily disabled to mitigate the Meltdown and Spectre CPU bugs. It can be enabled via javascript.options.shared_memory setting under about:config

[18] The feature is available only in Firefox Nightly builds.

[19] The feature was temporarily disabled to mitigate the Meltdown and Spectre CPU bugs.

[20] The feature have to be enabled via "Experimental enabled SharedArrayBuffer support in JavaScript." setting under about:flags

[21] The feature was temporarily disabled to mitigate the Meltdown and Spectre CPU bugs.

[22] The feature have to be enabled via --js-flags="--harmony" flag

[23] Requires native support for Object.assign

[24] The feature is considered unstable, but can be enabled via --js-flags="--harmony-promise-finally" flag

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

[26] Requires native support for String.prototype.trimLeft.

[27] Requires native support for String.prototype.trimRight.

[28] Name of Array.prototype.flatten() changed to Array.prototype.flat() due to web compatibility issues.

[29] Older Firefox Nightly builds support only the obsolete draft function name Array.prototype.flatten().

[30] The feature have to be enabled via javascript.options.bigint setting under about:config.

[31] The feature have to be enabled via --js-flags="--harmony-optional-chaining" flag

[32] The feature has to be enabled via JSC runtime flag: __XPC_JSC_useNullishAwareOperators=true open -a 'Safari Technology Preview'.

[33] The feature have to be enabled via --js-flags="--harmony-nullish" flag

diff --git a/es5/index.html b/es5/index.html index c09e8fcc68..9b7e51772b 100644 --- a/es5/index.html +++ b/es5/index.html @@ -128,7 +128,7 @@ es5-shim Konq 4.13 -Konq 4.14[1] +Konq 4.14[2] IE 8 IE 9 IE 10 @@ -171,26 +171,26 @@ BESEN PJS Echo JS -Node 0.10[2] -Node 0.12[3] -Node 4[3] -Node >=6.5 <7[3] -Node 7.0-7.5[3] -Node >=7.6 <8[3] -Node >=8.0 <8.3[3] -Node >=8.3 <8.7[3] -Node >=8.7 <8.10[3] -Node >=8.10 <9[3] -Node >=10.0 <10.4[3] -Node >=10.4 <10.9[3] -Node >=10.9 <11[3] -Node 11[3] -Node 12.0-12.4[3] -Node 12.5-12.8[3] -Node 12.9-12.10[3] -Node >=12.11 <13[3] -Node 13.0-13.1[3] -Node 13.2+[3] +Node 0.10[3] +Node 0.12[1] +Node 4[1] +Node >=6.5 <7[1] +Node 7.0-7.5[1] +Node >=7.6 <8[1] +Node >=8.0 <8.3[1] +Node >=8.3 <8.7[1] +Node >=8.7 <8.10[1] +Node >=8.10 <9[1] +Node >=10.0 <10.4[1] +Node >=10.4 <10.9[1] +Node >=10.9 <11[1] +Node 11[1] +Node 12.0-12.4[1] +Node 12.5-12.8[1] +Node 12.9-12.10[1] +Node >=12.11 <13[1] +Node 13.0-13.1[1] +Node 13.2+[1] DUK 1.5 DUK 1.6 DUK 1.7 @@ -4714,7 +4714,7 @@ 3/3 3/3 0/3 -0/3 +3/3 3/3 3/3 3/3 @@ -4820,7 +4820,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -4926,7 +4926,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -5032,7 +5032,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -5132,7 +5132,7 @@ 2/8 7/8 2/8 -5/8 +7/8 7/8 7/8 7/8 @@ -5350,7 +5350,7 @@ Yes Yes Yes -No +Yes Yes Yes Yes @@ -5660,7 +5660,7 @@ Yes Yes Yes -No +Yes Yes Yes Yes @@ -8169,7 +8169,7 @@
-

[1] Results are only applicable for the KHTML rendering engine.

[2] Flagged features have to be enabled via --harmony flag

[3] Flagged features have to be enabled via --harmony or --es_staging flag

[4] Executed in Node.js/JVM mode via graalvm/bin/node --jvm.

[5] In Internet Explorer 8 Object.defineProperty only accepts DOM objects (MSDN reference).

[6] In Internet Explorer 8 Object.getOwnPropertyDescriptor only accepts DOM objects (MSDN reference).

[7] Internet Explorer 6 - 8 do not differentiate between a dense array with undefined values, and a sparse array. Specifically, `0 in [,]` and `0 in [undefined]` both yield false - whereas in a compliant browser, the former would give `false`, the latter `true`. As such, ES5 array iteration methods can only be shimmed reliably when dealing with dense arrays.

[8] IE10 PP2 fails this test.

+

[1] Flagged features have to be enabled via --harmony or --es_staging flag

[2] Results are only applicable for the KHTML rendering engine.

[3] Flagged features have to be enabled via --harmony flag

[4] Executed in Node.js/JVM mode via graalvm/bin/node --jvm.

[5] In Internet Explorer 8 Object.defineProperty only accepts DOM objects (MSDN reference).

[6] In Internet Explorer 8 Object.getOwnPropertyDescriptor only accepts DOM objects (MSDN reference).

[7] Internet Explorer 6 - 8 do not differentiate between a dense array with undefined values, and a sparse array. Specifically, `0 in [,]` and `0 in [undefined]` both yield false - whereas in a compliant browser, the former would give `false`, the latter `true`. As such, ES5 array iteration methods can only be shimmed reliably when dealing with dense arrays.

[8] IE10 PP2 fails this test.

diff --git a/es6/index.html b/es6/index.html index b53ae95667..6e16f155e1 100644 --- a/es6/index.html +++ b/es6/index.html @@ -167,7 +167,7 @@ Type-
Script +
core-js 3
Type-
Script +
core-js 3
es6-shim -Konq 4.14[1] +Konq 4.14[2] IE 10 IE 11 Edge 15 @@ -209,26 +209,26 @@ Echo JS XS6 JXA -Node 0.10[2] -Node 0.12[3] -Node 4[3] -Node >=6.5 <7[3] -Node 7.0-7.5[3] -Node >=7.6 <8[3] -Node >=8.0 <8.3[3] -Node >=8.3 <8.7[3] -Node >=8.7 <8.10[3] -Node >=8.10 <9[3] -Node >=10.0 <10.4[3] -Node >=10.4 <10.9[3] -Node >=10.9 <11[3] -Node 11[3] -Node 12.0-12.4[3] -Node 12.5-12.8[3] -Node 12.9-12.10[3] -Node >=12.11 <13[3] -Node 13.0-13.1[3] -Node 13.2+[3] +Node 0.10[3] +Node 0.12[1] +Node 4[1] +Node >=6.5 <7[1] +Node 7.0-7.5[1] +Node >=7.6 <8[1] +Node >=8.0 <8.3[1] +Node >=8.3 <8.7[1] +Node >=8.7 <8.10[1] +Node >=8.10 <9[1] +Node >=10.0 <10.4[1] +Node >=10.4 <10.9[1] +Node >=10.9 <11[1] +Node 11[1] +Node 12.0-12.4[1] +Node 12.5-12.8[1] +Node 12.9-12.10[1] +Node >=12.11 <13[1] +Node 13.0-13.1[1] +Node 13.2+[1] DUK 1.5 DUK 1.6 DUK 1.7 @@ -19168,7 +19168,7 @@ 10/18 18/18 12/18 -1/18 +1/18 1/18 10/18 18/18 @@ -20570,7 +20570,7 @@ Yes Yes Yes -No +Flag[14] Flag Yes Yes @@ -20701,7 +20701,7 @@ Yes Yes Yes -No +Flag Flag Yes Yes @@ -20831,7 +20831,7 @@ Yes Yes Yes -No +Flag[14] Flag Yes Yes @@ -21088,7 +21088,7 @@ Yes Yes No -No +Flag[14] Flag Yes Yes @@ -21475,7 +21475,7 @@ No Yes Yes -No +Flag[14] Flag Yes Yes @@ -21596,7 +21596,7 @@ 10/14 14/14 0/14 -0/14 +0/14 0/14 7/14 14/14 @@ -22621,7 +22621,7 @@ Yes Yes No -No +Flag[14] Flag Yes Yes @@ -22748,7 +22748,7 @@ Yes Yes No -No +Flag[14] Flag Yes Yes @@ -22879,7 +22879,7 @@ Yes Yes No -No +Flag Flag Yes Yes @@ -23009,7 +23009,7 @@ Yes Yes No -No +Flag[14] Flag Yes Yes @@ -23136,7 +23136,7 @@ Yes Yes No -No +Flag[14] Flag Yes Yes @@ -23265,7 +23265,7 @@ No Yes No -No +Flag[14] Flag Yes Yes @@ -39708,7 +39708,7 @@ 19/19 18/19 0/19 -13/19 +15/19 17/19 19/19 19/19 @@ -40096,7 +40096,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -40355,7 +40355,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -42249,7 +42249,7 @@ 19/19 18/19 0/19 -13/19 +15/19 17/19 19/19 19/19 @@ -42637,7 +42637,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -42896,7 +42896,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -44795,7 +44795,7 @@ 11/12 11/12 0/12 -7/12 +9/12 11/12 12/12 12/12 @@ -45183,7 +45183,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -45442,7 +45442,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -46460,7 +46460,7 @@ 10/11 10/11 0/11 -6/11 +8/11 10/11 11/11 11/11 @@ -46847,7 +46847,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -47106,7 +47106,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -55449,7 +55449,7 @@ 8/8 0/8 0/8 -4/8 +5/8 7/8 8/8 8/8 @@ -55724,7 +55724,7 @@ Yes No No -No +Yes Yes Yes Yes @@ -61825,7 +61825,7 @@ 4/4 4/4 4/4 -0/4 +1/4 3/4 4/4 4/4 @@ -62076,7 +62076,7 @@ Yes Yes Yes -No +Yes Yes Yes Yes @@ -65094,7 +65094,7 @@ 10/10 10/10 0/10 -1/10 +2/10 10/10 10/10 10/10 @@ -65344,7 +65344,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -70231,7 +70231,7 @@ 7/9 7/9 7/9 -0/9 +2/9 9/9 9/9 9/9 @@ -70355,7 +70355,7 @@ Yes Yes Yes -No +Yes Yes Yes Yes @@ -70727,7 +70727,7 @@ Yes Yes Yes -No +Yes Yes Yes Yes @@ -96467,7 +96467,7 @@ -

[1] Results are only applicable for the KHTML rendering engine.

[2] Flagged features have to be enabled via --harmony flag

[3] Flagged features have to be enabled via --harmony or --es_staging flag

[4] Executed in Node.js/JVM mode via graalvm/bin/node --jvm.

[5] Requires the properTailCalls compile option.

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

[7] The feature have to be enabled via --js-flags="--harmony" flag

[8] The feature is considered unstable, but can be enabled via --js-flags="--harmony-tailcalls" flag

[9] Requires the downlevelIteration compile option.

[10] This feature is supported when using Babel with core-js.

[11] This compiler requires generic iterables have either a Symbol.iterator or non-standard "@@iterator" method.

[12] Does not work with the downlevelIteration compile option.

[13] Firefox incorrectly produces an error in strict mode if the method is named "arguments", "eval", or "delete".

[14] The feature have to be enabled via "Experimental Javascript features" setting under about:flags

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

[16] Safari 12 caches TemplateStrings using a GC-able "CodeBlock". But TemplateStrings are supposed to always be identical! When the CodeBlock is reclaimed, the TemplateStrings' identity is broken. Thankfully, [[Call]] vs [[Construct]] generate different CodeBlocks, which exposes the broken behavior.

[17] This feature features requires an optional transformer setting.

[18] Note that prior to ES6, it was recommended that ES5 implementations forbid block-level declarations in strict mode.

[19] Requires native support for Object.prototype.__proto__

[20] This compiler transforms extends into code that uses native Object.prototype.__proto__ or copies properties from the superclass, instead of using the prototype chain.

[21] TypeScript transforms extends into code that copies static properties from the superclass (but uses the prototype chain for instance properties).

[22] This feature requires native generators or regenerator-runtime, it's a part of babel-polyfill or babel-runtime.

[23] The 2015 version of the specification also specifies an "enumerate" handler, which was removed in the 2016 version.

[24] The 2015 version of the specification also specifies Reflect.enumerate, which was removed in the 2016 version.

[25] Functionality for Symbol.iterator is tested by the "generic iterators" subtests for the spread (...) operator, for..of loops, destructuring, yield *, and Array.from.

[26] Flagged features have to be enabled via "Enable experimental Javascript features" setting under about:flags

[27] with is not supported in ejs

[28] Requires function "name" properties to be natively configurable

[29] The feature was disabled due to a compatibility issue.

[30] Requires native support for Float32Array

[31] Unlike other engines, Chakra sorts properties removed by delete, then recreated by assignment, to their original creation positions, not their latest positions.

[32] This uses native for-in enumeration order, rather than the correct order.

[33] The 2015 version of the specification contains multiple bugs for hoisted block-level function declaration semantics, which these tests disregard.

[34] Note that this is distinct from the existence or functionality of Object.prototype.__proto__.

+

[1] Flagged features have to be enabled via --harmony or --es_staging flag

[2] Results are only applicable for the KHTML rendering engine.

[3] Flagged features have to be enabled via --harmony flag

[4] Executed in Node.js/JVM mode via graalvm/bin/node --jvm.

[5] Requires the properTailCalls compile option.

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

[7] The feature have to be enabled via --js-flags="--harmony" flag

[8] The feature is considered unstable, but can be enabled via --js-flags="--harmony-tailcalls" flag

[9] Requires the downlevelIteration compile option.

[10] This feature is supported when using Babel with core-js.

[11] This compiler requires generic iterables have either a Symbol.iterator or non-standard "@@iterator" method.

[12] Does not work with the downlevelIteration compile option.

[13] Firefox incorrectly produces an error in strict mode if the method is named "arguments", "eval", or "delete".

[14] The feature have to be enabled via "Experimental Javascript features" setting under about:flags

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

[16] Safari 12 caches TemplateStrings using a GC-able "CodeBlock". But TemplateStrings are supposed to always be identical! When the CodeBlock is reclaimed, the TemplateStrings' identity is broken. Thankfully, [[Call]] vs [[Construct]] generate different CodeBlocks, which exposes the broken behavior.

[17] This feature features requires an optional transformer setting.

[18] Note that prior to ES6, it was recommended that ES5 implementations forbid block-level declarations in strict mode.

[19] Requires native support for Object.prototype.__proto__

[20] This compiler transforms extends into code that uses native Object.prototype.__proto__ or copies properties from the superclass, instead of using the prototype chain.

[21] TypeScript transforms extends into code that copies static properties from the superclass (but uses the prototype chain for instance properties).

[22] This feature requires native generators or regenerator-runtime, it's a part of babel-polyfill or babel-runtime.

[23] The 2015 version of the specification also specifies an "enumerate" handler, which was removed in the 2016 version.

[24] The 2015 version of the specification also specifies Reflect.enumerate, which was removed in the 2016 version.

[25] Functionality for Symbol.iterator is tested by the "generic iterators" subtests for the spread (...) operator, for..of loops, destructuring, yield *, and Array.from.

[26] Flagged features have to be enabled via "Enable experimental Javascript features" setting under about:flags

[27] with is not supported in ejs

[28] Requires function "name" properties to be natively configurable

[29] The feature was disabled due to a compatibility issue.

[30] Requires native support for Float32Array

[31] Unlike other engines, Chakra sorts properties removed by delete, then recreated by assignment, to their original creation positions, not their latest positions.

[32] This uses native for-in enumeration order, rather than the correct order.

[33] The 2015 version of the specification contains multiple bugs for hoisted block-level function declaration semantics, which these tests disregard.

[34] Note that this is distinct from the existence or functionality of Object.prototype.__proto__.

diff --git a/esintl/index.html b/esintl/index.html index 9673f2faa3..84f68088a4 100644 --- a/esintl/index.html +++ b/esintl/index.html @@ -172,26 +172,26 @@ SF TP WK PJS -Node 0.10[1] -Node 0.12[2] -Node 4[2] -Node >=6.5 <7[2] -Node 7.0-7.5[2] -Node >=7.6 <8[2] -Node >=8.0 <8.3[2] -Node >=8.3 <8.7[2] -Node >=8.7 <8.10[2] -Node >=8.10 <9[2] -Node >=10.0 <10.4[2] -Node >=10.4 <10.9[2] -Node >=10.9 <11[2] -Node 11[2] -Node 12.0-12.4[2] -Node 12.5-12.8[2] -Node 12.9-12.10[2] -Node >=12.11 <13[2] -Node 13.0-13.1[2] -Node 13.2+[2] +Node 0.10[2] +Node 0.12[1] +Node 4[1] +Node >=6.5 <7[1] +Node 7.0-7.5[1] +Node >=7.6 <8[1] +Node >=8.0 <8.3[1] +Node >=8.3 <8.7[1] +Node >=8.7 <8.10[1] +Node >=8.10 <9[1] +Node >=10.0 <10.4[1] +Node >=10.4 <10.9[1] +Node >=10.9 <11[1] +Node 11[1] +Node 12.0-12.4[1] +Node 12.5-12.8[1] +Node 12.9-12.10[1] +Node >=12.11 <13[1] +Node 13.0-13.1[1] +Node 13.2+[1] DUK 2.0 DUK 2.1 DUK 2.2 @@ -260,7 +260,7 @@ 2/2 2/2 0/2 -0/2 +2/2 2/2 2/2 2/2 @@ -347,7 +347,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -434,7 +434,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -518,7 +518,7 @@ 4/4 4/4 0/4 -0/4 +3/4 4/4 4/4 4/4 @@ -605,7 +605,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -692,7 +692,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -779,7 +779,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -978,7 +978,7 @@ 1/1 1/1 0/1 -0/1 +1/1 1/1 1/1 1/1 @@ -1065,7 +1065,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -1149,7 +1149,7 @@ 1/1 1/1 0/1 -0/1 +1/1 1/1 1/1 1/1 @@ -1236,7 +1236,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -1320,7 +1320,7 @@ 5/5 5/5 0/5 -0/5 +4/5 5/5 5/5 5/5 @@ -1407,7 +1407,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -1494,7 +1494,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -1581,7 +1581,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -1668,7 +1668,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -1867,7 +1867,7 @@ 6/6 6/6 0/6 -0/6 +4/6 6/6 6/6 6/6 @@ -1954,7 +1954,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -2041,7 +2041,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -2128,7 +2128,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -2331,7 +2331,7 @@ Yes Yes ? -No +? Yes Yes Yes @@ -2426,7 +2426,7 @@ Yes Yes No -No +Yes Yes Yes Yes @@ -3671,7 +3671,7 @@
-

[1] Flagged features have to be enabled via --harmony flag

[2] Flagged features have to be enabled via --harmony or --es_staging flag

[3] Executed in Node.js/JVM mode via graalvm/bin/node --jvm.

+

[1] Flagged features have to be enabled via --harmony or --es_staging flag

[2] Flagged features have to be enabled via --harmony flag

[3] Executed in Node.js/JVM mode via graalvm/bin/node --jvm.

diff --git a/esnext/index.html b/esnext/index.html index 4919311255..0d882e2cc7 100644 --- a/esnext/index.html +++ b/esnext/index.html @@ -186,26 +186,26 @@ SF TP WK PJS -Node 0.10[1] -Node 0.12[2] -Node 4[2] -Node >=6.5 <7[2] -Node 7.0-7.5[2] -Node >=7.6 <8[2] -Node >=8.0 <8.3[2] -Node >=8.3 <8.7[2] -Node >=8.7 <8.10[2] -Node >=8.10 <9[2] -Node >=10.0 <10.4[2] -Node >=10.4 <10.9[2] -Node >=10.9 <11[2] -Node 11[2] -Node 12.0-12.4[2] -Node 12.5-12.8[2] -Node 12.9-12.10[2] -Node >=12.11 <13[2] -Node 13.0-13.1[2] -Node 13.2+[2] +Node 0.10[2] +Node 0.12[1] +Node 4[1] +Node >=6.5 <7[1] +Node 7.0-7.5[1] +Node >=7.6 <8[1] +Node >=8.0 <8.3[1] +Node >=8.3 <8.7[1] +Node >=8.7 <8.10[1] +Node >=8.10 <9[1] +Node >=10.0 <10.4[1] +Node >=10.4 <10.9[1] +Node >=10.9 <11[1] +Node 11[1] +Node 12.0-12.4[1] +Node 12.5-12.8[1] +Node 12.9-12.10[1] +Node >=12.11 <13[1] +Node 13.0-13.1[1] +Node 13.2+[1] DUK 2.0 DUK 2.1 DUK 2.2 @@ -22574,7 +22574,7 @@
-

[1] Flagged features have to be enabled via --harmony flag

[2] Flagged features have to be enabled via --harmony or --es_staging flag

[3] Executed in Node.js/JVM mode via graalvm/bin/node --jvm.

[4] Available behind the --js-flags=--harmony-weak-refs --expose-gc flag in V8.

[5] The feature have to be enabled via javascript.options.experimental.fields setting under about:config.

[6] The feature have to be enabled via --js-flags="--harmony" flag

[7] The feature have to be enabled via javascript.options.experimental.fields setting under about:config. Private fields are supported by parser, but behave as public fields.

[8] The feature is available only in Firefox Nightly builds.

[9] This feature is supported when using Babel with core-js.

[10] TypeScript's compiler will accept code using this feature if the --target ES6 flag is set, but passes it through unmodified and does not supply a runtime polyfill.

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

[12] The feature is considered unstable, but can be enabled via --js-flags="--harmony-string-replaceall" flag

[13] Babel 6 still has no official support decorators, but you can use this plugin.

[14] Requires the --enable-pipeline-operator compile option.

+

[1] Flagged features have to be enabled via --harmony or --es_staging flag

[2] Flagged features have to be enabled via --harmony flag

[3] Executed in Node.js/JVM mode via graalvm/bin/node --jvm.

[4] Available behind the --js-flags=--harmony-weak-refs --expose-gc flag in V8.

[5] The feature have to be enabled via javascript.options.experimental.fields setting under about:config.

[6] The feature have to be enabled via --js-flags="--harmony" flag

[7] The feature have to be enabled via javascript.options.experimental.fields setting under about:config. Private fields are supported by parser, but behave as public fields.

[8] The feature is available only in Firefox Nightly builds.

[9] This feature is supported when using Babel with core-js.

[10] TypeScript's compiler will accept code using this feature if the --target ES6 flag is set, but passes it through unmodified and does not supply a runtime polyfill.

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

[12] The feature is considered unstable, but can be enabled via --js-flags="--harmony-string-replaceall" flag

[13] Babel 6 still has no official support decorators, but you can use this plugin.

[14] Requires the --enable-pipeline-operator compile option.

diff --git a/non-standard/index.html b/non-standard/index.html index 272321533f..902cf13311 100644 --- a/non-standard/index.html +++ b/non-standard/index.html @@ -117,7 +117,7 @@ Konq 4.13 -Konq 4.14[1] +Konq 4.14[2] IE 8 IE 9 IE 10 @@ -159,26 +159,26 @@ Rhino 1.7 BESEN PJS -Node 0.10[2] -Node 0.12[3] -Node 4[3] -Node >=6.5 <7[3] -Node 7.0-7.5[3] -Node >=7.6 <8[3] -Node >=8.0 <8.3[3] -Node >=8.3 <8.7[3] -Node >=8.7 <8.10[3] -Node >=8.10 <9[3] -Node >=10.0 <10.4[3] -Node >=10.4 <10.9[3] -Node >=10.9 <11[3] -Node 11[3] -Node 12.0-12.4[3] -Node 12.5-12.8[3] -Node 12.9-12.10[3] -Node >=12.11 <13[3] -Node 13.0-13.1[3] -Node 13.2+[3] +Node 0.10[3] +Node 0.12[1] +Node 4[1] +Node >=6.5 <7[1] +Node 7.0-7.5[1] +Node >=7.6 <8[1] +Node >=8.0 <8.3[1] +Node >=8.3 <8.7[1] +Node >=8.7 <8.10[1] +Node >=8.10 <9[1] +Node >=10.0 <10.4[1] +Node >=10.4 <10.9[1] +Node >=10.9 <11[1] +Node 11[1] +Node 12.0-12.4[1] +Node 12.5-12.8[1] +Node 12.9-12.10[1] +Node >=12.11 <13[1] +Node 13.0-13.1[1] +Node 13.2+[1] DUK 2.0 DUK 2.1 DUK 2.2 @@ -351,7 +351,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -442,7 +442,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -533,7 +533,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -624,7 +624,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -715,7 +715,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -806,7 +806,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -897,7 +897,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -988,7 +988,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -1079,7 +1079,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -1170,7 +1170,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -1261,7 +1261,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -1354,7 +1354,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -1447,7 +1447,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -1540,7 +1540,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -1633,7 +1633,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -1726,7 +1726,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -1819,7 +1819,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -1912,7 +1912,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -2005,7 +2005,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -2098,7 +2098,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -2191,7 +2191,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -2284,7 +2284,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -2377,7 +2377,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -2470,7 +2470,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -2563,7 +2563,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -2656,7 +2656,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -2749,7 +2749,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -2842,7 +2842,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -2935,7 +2935,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -3028,7 +3028,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -3121,7 +3121,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -3214,7 +3214,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -3307,7 +3307,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -3400,7 +3400,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -3493,7 +3493,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -3586,7 +3586,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -3679,7 +3679,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -3772,7 +3772,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -3865,7 +3865,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -3958,7 +3958,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -4051,7 +4051,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -4144,7 +4144,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -4237,7 +4237,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -4330,7 +4330,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -4423,7 +4423,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -4516,7 +4516,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -4609,7 +4609,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -4702,7 +4702,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -4795,7 +4795,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -4888,7 +4888,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -4981,7 +4981,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -5074,7 +5074,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -5167,7 +5167,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -5260,7 +5260,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -5353,7 +5353,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -5446,7 +5446,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -5537,7 +5537,7 @@ No No No -No +No[7] No[7] No[7] No[7] @@ -9287,7 +9287,7 @@ No No Yes -No +Yes Yes No No @@ -10186,7 +10186,7 @@
-

[1] Results are only applicable for the KHTML rendering engine.

[2] Flagged features have to be enabled via --harmony flag

[3] Flagged features have to be enabled via --harmony or --es_staging flag

[4] Executed in Node.js/JVM mode via graalvm/bin/node --jvm.

[5] Flagged features have to be enabled via "Enable experimental Javascript features" setting under about:flags

[6] The feature is available only in Firefox Nightly builds.

[7] The feature is considered unstable, but can be enabled via --js-flags="--harmony-simd" flag

[8] The feature has to be enabled via the --nashorn-compat flag.

[9] The feature is disabled only in Firefox Nightly builds.

[10] The behaviour of the Proxy “ownKeys” handler in presence of duplicate keys has been modified later.

+

[1] Flagged features have to be enabled via --harmony or --es_staging flag

[2] Results are only applicable for the KHTML rendering engine.

[3] Flagged features have to be enabled via --harmony flag

[4] Executed in Node.js/JVM mode via graalvm/bin/node --jvm.

[5] Flagged features have to be enabled via "Enable experimental Javascript features" setting under about:flags

[6] The feature is available only in Firefox Nightly builds.

[7] The feature is considered unstable, but can be enabled via --js-flags="--harmony-simd" flag

[8] The feature has to be enabled via the --nashorn-compat flag.

[9] The feature is disabled only in Firefox Nightly builds.

[10] The behaviour of the Proxy “ownKeys” handler in presence of duplicate keys has been modified later.