Time to Stable

For a given set of browsers, what APIs are in all of them and how many days it take for the API to land in the first browser to the last.

Example Comparisons
Browsers
Features

Summary

A count of the number of APIs that landed in A first and B last.
Last in EdgeLast in Safari
First in Edge 425
First in Safari 650

Average time for an API to become available across Edge and Safari

1075 APIs took an average of 1634.51 days to become available to use.

API breakdown:

Average time to landing by year of first landing

If a feature landed in the earliest browser in 20XX it took Y days on average to become available in the last browser (when considering Edge and Safari). TTA (time to available).
JS APIsJS TTA
2003 2864417.28
2005 93752.33
2007 252833.00
2008 22689.00
2009 102242.00
2010 111878.00
2011 761470.00
2012 61160.67
2013 131026.08
2014 62291.97
2015 203317.85
2016 56454.66
2017 14249.86
2018 36515.61
2019 9197.11
2020 124399.82
2021 20174.95
2022 32143.81
2023 48220.88
2024 27301.56
2025 655.67

The Tortoise and the Hare

There is a natural tension on the web with respect to browser engines. Every engine has their own set of priorities which define the level of investment that they choose to make and on which areas they choose to make it.

A developer naturally wants their experiences to be available to the widest audience possible and these differing priorities create an unevenness on the platform (a lumpiness) making it harder for developers to build experiences that work everywhere.

This section highlights where browsers are pushing and pulling on the platform.

Sprinters

This table is designed to show which browsers are pushing on the platform the most.

Adding features to quickly is not always desired because developers are unlikely to adopt those features in their sites or apps.

For a given year, if a feature landed in Browser X first, how many days it take on average to be available in Edge and Safari. TTA (time to available).
Year JSJS TTA
2003
  Safari 2864417.28
2005
  Safari 93752.33
2007
  Safari 252833.00
2008
  Safari 22689.00
2009
  Safari 102242.00
2010
  Safari 111878.00
2011
  Safari 761470.00
2012
  Safari 61160.67
2013
  Safari 131026.08
2014
  Safari 62291.97
2015
  Edge 196317.19
  Safari 7336.29
2016
  Safari 28826.75
  Edge 2882.57
2017
  Safari 14249.86
2018
  Safari 30548.33
  Edge 6352.00
2019
  Safari 9197.11
2020
  Edge 123401.80
  Safari 1156.00
2021
  Edge 17197.06
  Safari 349.67
2022
  Edge 1494.21
  Safari 18182.39
2023
  Safari 24328.04
  Edge 24113.71
2024
  Safari 12193.25
  Edge 15388.20
2025
  Edge 239.00
  Safari 464.00

Plodders

This table is designed to show which browsers are pulling on the platform the most.

For a feature that first landed in year X, how many days did it take on average for the last browser to catch up across Edge and Safari. TTA (time to available).
Year JS countJS TTA
2003
  Edge 2864417.28
2005
  Edge 93752.33
2007
  Edge 252833.00
2008
  Edge 22689.00
2009
  Edge 102242.00
2010
  Edge 111878.00
2011
  Edge 761470.00
2012
  Edge 61160.67
2013
  Edge 131026.08
2014
  Edge 62291.97
2015
  Safari 196317.19
  Edge 7336.29
2016
  Edge 28826.75
  Safari 2882.57
2017
  Edge 14249.86
2018
  Edge 30548.33
  Safari 6352.00
2019
  Edge 9197.11
2020
  Safari 123401.80
  Edge 1156.00
2021
  Safari 17197.06
  Edge 349.67
2022
  Safari 1494.21
  Edge 18182.39
2023
  Edge 24328.04
  Safari 24113.71
2024
  Edge 12193.25
  Safari 15388.20
2025
  Safari 239.00
  Edge 464.00

Stable APIs

Below is a list of features that are in Edge and Safari

Raw Data

Quick Links:

JS Data

API First Browser Date Last Browser Date Days Notes
javascript.builtins.AggregateError 📋Edge8/27/2020 Safari9/16/202020
javascript.builtins.AggregateError.AggregateError 📋Edge8/27/2020 Safari9/16/202020
javascript.builtins.AggregateError.errors 📋Edge8/27/2020 Safari9/16/202020
javascript.builtins.AggregateError.serializable_object Edge2/3/2022 Safari9/18/2023592
Chrome: AggregateError serializes to the Error type, without additional properties.Chrome Android: AggregateError serializes to the Error type, without additional properties.Edge: AggregateError serializes to the Error type, without additional properties.Firefox: AggregateError serializes to the AggregateError type, with properties name, message, cause, and errors.Firefox for Android: AggregateError serializes to the AggregateError type, with properties name, message, cause, and errors.Quest Browser: AggregateError serializes to the Error type, without additional properties.Opera: AggregateError serializes to the Error type, without additional properties.Opera Android: AggregateError serializes to the Error type, without additional properties.Samsung Internet: AggregateError serializes to the Error type, without additional properties.WebView Android: AggregateError serializes to the Error type, without additional properties.
javascript.builtins.Array 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.@@iterator 📋Edge7/29/2015 Safari9/20/2016419
Firefox: A placeholder property named @@iterator is used.Firefox: A placeholder property named iterator is used.Firefox for Android: A placeholder property named @@iterator is used.Firefox for Android: A placeholder property named iterator is used.
javascript.builtins.Array.@@species 📋Safari9/20/2016 Edge1/15/20201212
javascript.builtins.Array.@@unscopables 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Array.Array 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.at 📋Edge7/22/2021 Safari3/14/2022235
javascript.builtins.Array.concat 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.copyWithin 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Array.entries 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Array.every 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Array.fill 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Array.filter 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Array.find 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Array.findIndex 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Array.findLast 📋Edge1/6/2022 Safari3/14/202267
javascript.builtins.Array.findLastIndex 📋Edge1/6/2022 Safari3/14/202267
javascript.builtins.Array.flat 📋Safari9/17/2018 Edge1/15/2020485
javascript.builtins.Array.flatMap 📋Safari9/17/2018 Edge1/15/2020485
javascript.builtins.Array.forEach 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Array.from 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Array.fromAsync 📋Safari3/27/2023 Edge1/25/2024304
javascript.builtins.Array.includes 📋Safari9/30/2015 Edge8/2/2016307
javascript.builtins.Array.indexOf 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Array.isArray 📋Safari6/7/2010 Edge7/29/20151878
javascript.builtins.Array.join 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.keys 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Array.lastIndexOf 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Array.length 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.map 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Array.of 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Array.pop 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.push 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.reduce 📋Safari6/8/2009 Edge7/29/20152242
javascript.builtins.Array.reduceRight 📋Safari6/8/2009 Edge7/29/20152242
javascript.builtins.Array.reverse 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.shift 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.slice 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.some 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Array.sort 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.sort.stable_sorting Safari3/27/2017 Edge1/15/20201024
javascript.builtins.Array.splice 📋Safari6/23/2003 Edge7/29/20154419
Internet Explorer: From Internet Explorer 5.5 through 8, all elements of the array will not be deleted if deleteCount is omitted. This behavior was fixed in Internet Explorer 9.
javascript.builtins.Array.toLocaleString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.toLocaleString.locales_parameter Safari10/22/2013 Edge1/15/20202276
Deno: Only the locale data for en-US is available.Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the function silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Array.toLocaleString.options_parameter Safari10/22/2013 Edge1/15/20202276
javascript.builtins.Array.toReversed 📋Safari9/12/2022 Edge2/9/2023150
javascript.builtins.Array.toSorted 📋Safari9/12/2022 Edge2/9/2023150
javascript.builtins.Array.toSpliced 📋Safari9/12/2022 Edge2/9/2023150
javascript.builtins.Array.toString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.unshift 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Array.values 📋Safari9/30/2015 Edge8/2/2016307
javascript.builtins.Array.with 📋Safari9/12/2022 Edge2/9/2023150
javascript.builtins.ArrayBuffer 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.ArrayBuffer.@@species 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.ArrayBuffer.ArrayBuffer 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.ArrayBuffer.ArrayBuffer.maxByteLength_option 📋Edge3/13/2023 Safari3/27/202314
javascript.builtins.ArrayBuffer.byteLength 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.ArrayBuffer.detached 📋Edge6/2/2023 Safari3/5/2024277
javascript.builtins.ArrayBuffer.isView 📋Safari10/22/2013 Edge7/29/2015645
javascript.builtins.ArrayBuffer.maxByteLength 📋Edge3/13/2023 Safari3/27/202314
javascript.builtins.ArrayBuffer.resizable 📋Edge3/13/2023 Safari3/27/202314
javascript.builtins.ArrayBuffer.resize 📋Edge3/13/2023 Safari3/27/202314
javascript.builtins.ArrayBuffer.slice 📋Safari7/20/2011 Edge7/29/20151470
Firefox: The non-standard ArrayBuffer.slice() method has been removed in Firefox 53 (but the standardized version ArrayBuffer.prototype.slice() is kept.Firefox for Android: The non-standard ArrayBuffer.slice() method has been removed in Firefox for Android 53 (but the standardized version ArrayBuffer.prototype.slice() is kept.
javascript.builtins.ArrayBuffer.transfer 📋Edge6/2/2023 Safari3/5/2024277
javascript.builtins.ArrayBuffer.transferToFixedLength 📋Edge6/2/2023 Safari3/5/2024277
javascript.builtins.AsyncFunction 📋Safari3/27/2017 Edge4/5/20179
javascript.builtins.AsyncFunction.AsyncFunction 📋Safari3/27/2017 Edge4/5/20179
javascript.builtins.AsyncGenerator 📋Safari9/17/2018 Edge1/15/2020485
javascript.builtins.AsyncGenerator.next 📋Safari9/17/2018 Edge1/15/2020485
javascript.builtins.AsyncGenerator.return 📋Safari9/17/2018 Edge1/15/2020485
javascript.builtins.AsyncGenerator.throw 📋Safari9/17/2018 Edge1/15/2020485
javascript.builtins.AsyncGeneratorFunction 📋Safari9/17/2018 Edge1/15/2020485
javascript.builtins.AsyncGeneratorFunction.AsyncGeneratorFunction 📋Safari9/17/2018 Edge1/15/2020485
javascript.builtins.AsyncIterator 📋Safari4/12/2018 Edge1/15/2020643
javascript.builtins.AsyncIterator.@@asyncIterator 📋Safari4/12/2018 Edge1/15/2020643
javascript.builtins.Atomics 📋Edge1/15/2020 Safari12/13/2021698
Safari: Before Safari 16.4, Atomics is gated behind COOP/COEP. For more detail, read Making your website "cross-origin isolated" using COOP and COEP.Safari on iOS: Before Safari on iOS 16.4, Atomics is gated behind COOP/COEP. For more detail, read Making your website "cross-origin isolated" using COOP and COEP.WebView on iOS: Before WebView on iOS 16.4, Atomics is gated behind COOP/COEP. For more detail, read Making your website "cross-origin isolated" using COOP and COEP.
javascript.builtins.Atomics.add 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.Atomics.and 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.Atomics.compareExchange 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.Atomics.exchange 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.Atomics.isLockFree 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.Atomics.load 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.Atomics.notify 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.Atomics.or 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.Atomics.pause 📋Edge2/6/2025 Safari3/31/202553
javascript.builtins.Atomics.store 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.Atomics.sub 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.Atomics.wait 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.Atomics.waitAsync 📋Edge4/15/2021 Safari3/27/2023711
Chrome: The Atomics.waitAsync() method never times out. See bug 40742782.Chrome Android: The Atomics.waitAsync() method never times out. See bug 40742782.Edge: The Atomics.waitAsync() method never times out. See bug 40742782.Quest Browser: The Atomics.waitAsync() method never times out. See bug 40742782.Opera Android: The Atomics.waitAsync() method never times out. See bug 40742782.WebView Android: The Atomics.waitAsync() method never times out. See bug 40742782.
javascript.builtins.Atomics.xor 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.BigInt 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.BigInt.BigInt 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.BigInt.asIntN 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.BigInt.asUintN 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.BigInt.toLocaleString 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.BigInt.toLocaleString.locales_parameter Edge1/15/2020 Safari9/16/2020245
Deno: Only the locale data for en-US is available.
javascript.builtins.BigInt.toLocaleString.options_parameter Edge1/15/2020 Safari9/16/2020245
javascript.builtins.BigInt.toString 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.BigInt.valueOf 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.BigInt64Array 📋Edge1/15/2020 Safari9/20/2021614
javascript.builtins.BigInt64Array.BigInt64Array 📋Edge1/15/2020 Safari9/20/2021614
javascript.builtins.BigUint64Array 📋Edge1/15/2020 Safari9/20/2021614
javascript.builtins.BigUint64Array.BigUint64Array 📋Edge1/15/2020 Safari9/20/2021614
javascript.builtins.Boolean 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Boolean.Boolean 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Boolean.toString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Boolean.valueOf 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.DataView 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.DataView 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.DataView.sharedarraybuffer_support Edge1/15/2020 Safari12/13/2021698
javascript.builtins.DataView.buffer 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.byteLength 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.byteOffset 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.getBigInt64 📋Edge1/15/2020 Safari9/20/2021614
javascript.builtins.DataView.getBigUint64 📋Edge1/15/2020 Safari9/20/2021614
javascript.builtins.DataView.getFloat16 📋Safari12/11/2024 Edge4/4/2025114
javascript.builtins.DataView.getFloat32 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.getFloat64 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.getInt16 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.getInt32 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.getInt8 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.getUint16 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.getUint32 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.getUint8 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.setBigInt64 📋Edge1/15/2020 Safari9/20/2021614
javascript.builtins.DataView.setBigUint64 📋Edge1/15/2020 Safari9/20/2021614
javascript.builtins.DataView.setFloat16 📋Safari12/11/2024 Edge4/4/2025114
javascript.builtins.DataView.setFloat32 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.setFloat64 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.setInt16 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.setInt32 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.setInt8 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.setUint16 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.setUint32 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.DataView.setUint8 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Date 📋Safari6/23/2003 Edge7/29/20154419
Internet Explorer: The ISO8601 Date Format is not supported in Internet Explorer 8 or earlier.
javascript.builtins.Date.@@toPrimitive 📋Safari9/20/2016 Edge4/5/2017197
javascript.builtins.Date.Date 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.UTC 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.UTC.optional_monthIndex Safari3/27/2017 Edge4/5/20179
javascript.builtins.Date.getDate 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getDay 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getFullYear 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getHours 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getMilliseconds 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getMinutes 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getMonth 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getSeconds 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getTime 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getTimezoneOffset 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getUTCDate 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getUTCDay 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getUTCFullYear 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getUTCHours 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getUTCMilliseconds 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getUTCMinutes 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getUTCMonth 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getUTCSeconds 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.getYear 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.now 📋Safari6/8/2009 Edge7/29/20152242
javascript.builtins.Date.parse 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.parse.iso_8601 Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Date.setDate 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setFullYear 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setHours 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setMilliseconds 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setMinutes 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setMonth 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setSeconds 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setTime 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setUTCDate 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setUTCFullYear 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setUTCHours 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setUTCMilliseconds 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setUTCMinutes 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setUTCMonth 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setUTCSeconds 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.setYear 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.toDateString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.toGMTString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.toISOString 📋Safari6/8/2009 Edge7/29/20152242
javascript.builtins.Date.toJSON 📋Safari6/8/2009 Edge7/29/20152242
javascript.builtins.Date.toLocaleDateString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.toLocaleDateString.iana_time_zone_names Safari10/22/2013 Edge8/2/20161015
javascript.builtins.Date.toLocaleDateString.locales_parameter Edge7/29/2015 Safari9/20/2016419
Deno: Only the locale data for en-US is available.Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the function silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Date.toLocaleDateString.options_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Date.toLocaleString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.toLocaleString.iana_time_zone_names Safari10/22/2013 Edge8/2/20161015
javascript.builtins.Date.toLocaleString.locales_parameter Edge7/29/2015 Safari9/20/2016419
Deno: Only the locale data for en-US is available.Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the function silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Date.toLocaleString.options_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Date.toLocaleTimeString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.toLocaleTimeString.iana_time_zone_names Safari10/22/2013 Edge8/2/20161015
javascript.builtins.Date.toLocaleTimeString.locales_parameter Edge7/29/2015 Safari9/20/2016419
Deno: Only the locale data for en-US is available.Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the function silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Date.toLocaleTimeString.options_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Date.toString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.toTimeString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.toUTCString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Date.valueOf 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Error 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Error.Error 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Error.Error.options_cause_parameter 📋Edge9/2/2021 Safari9/20/202118
javascript.builtins.Error.captureStackTrace 📋Edge1/15/2020 Safari12/11/20231426
javascript.builtins.Error.cause 📋Edge9/2/2021 Safari9/20/202118
Chrome: Before version 125, default console logging for Error objects does not print the cause.Chrome Android: Before version 125, default console logging for Error objects does not print the cause.Edge: Before version 125, default console logging for Error objects does not print the cause.Quest Browser: Before version false, default console logging for Error objects does not print the cause.Opera: Before version 111, default console logging for Error objects does not print the cause.Opera Android: Before version 83, default console logging for Error objects does not print the cause.Safari: Default console logging for Error objects does not print the cause.Safari on iOS: Default console logging for Error objects does not print the cause.Samsung Internet: Before version 27.0, default console logging for Error objects does not print the cause.WebView Android: Before version 125, default console logging for Error objects does not print the cause.WebView on iOS: Default console logging for Error objects does not print the cause.
javascript.builtins.Error.isError 📋Edge3/6/2025 Safari3/31/202525
Node.js: Returns false for DOMException instances. See issue 56497.Safari: Returns false for DOMException instances.Safari on iOS: Returns false for DOMException instances.WebView on iOS: Returns false for DOMException instances.
javascript.builtins.Error.message 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Error.name 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Error.stack Safari7/25/2012 Edge7/29/20151099
javascript.builtins.Error.stackTraceLimit Safari4/12/2018 Edge1/15/2020643
javascript.builtins.Error.toString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.EvalError 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.EvalError.EvalError 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.FinalizationRegistry 📋Edge7/16/2020 Safari4/26/2021284
javascript.builtins.FinalizationRegistry.FinalizationRegistry 📋Edge7/16/2020 Safari4/26/2021284
javascript.builtins.FinalizationRegistry.register 📋Edge7/16/2020 Safari4/26/2021284
javascript.builtins.FinalizationRegistry.register.symbol_as_target Edge1/12/2023 Safari3/27/202374
javascript.builtins.FinalizationRegistry.unregister 📋Edge7/16/2020 Safari4/26/2021284
javascript.builtins.FinalizationRegistry.unregister.symbol_as_target Edge1/12/2023 Safari3/27/202374
javascript.builtins.Float16Array 📋Safari12/11/2024 Edge4/4/2025114
javascript.builtins.Float16Array.Float16Array 📋Safari12/11/2024 Edge4/4/2025114
javascript.builtins.Float32Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Float32Array.Float32Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Float32Array.Float32Array.constructor_without_parameters Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Float32Array.Float32Array.iterable_allowed Edge8/2/2016 Safari9/20/201649
javascript.builtins.Float64Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Float64Array.Float64Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Float64Array.Float64Array.constructor_without_parameters Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Float64Array.Float64Array.iterable_allowed Edge8/2/2016 Safari9/20/201649
javascript.builtins.Function 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Function.@@hasInstance 📋Safari9/20/2016 Edge4/5/2017197
javascript.builtins.Function.Function 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Function.apply 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Function.apply.generic_arrays_as_arguments Safari7/25/2012 Edge7/29/20151099
javascript.builtins.Function.arguments Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Function.bind 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Function.call 📋Safari6/23/2003 Edge7/29/20154419
Node.js: When calling this method, thisArg does not default to the global object.
javascript.builtins.Function.caller Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Function.length 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Function.length.configurable_true Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Function.name 📋Safari7/25/2012 Edge8/2/20161469
javascript.builtins.Function.name.configurable_true Edge8/2/2016 Safari9/20/201649
javascript.builtins.Function.name.inferred_names Safari9/20/2016 Edge1/15/20201212
Edge: Names for functions defined in a dictionary are properly assigned; however, anonymous functions defined on a var/let variable assignment have blank names.
javascript.builtins.Function.toString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Function.toString.toString_revision Edge1/15/2020 Safari9/18/20231342
javascript.builtins.Generator 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.Generator.next 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.Generator.return 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.Generator.throw 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.GeneratorFunction 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.GeneratorFunction.GeneratorFunction 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.Infinity 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Int16Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Int16Array.Int16Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Int16Array.Int16Array.constructor_without_parameters Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Int16Array.Int16Array.iterable_allowed Edge8/2/2016 Safari9/20/201649
javascript.builtins.Int32Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Int32Array.Int32Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Int32Array.Int32Array.constructor_without_parameters Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Int32Array.Int32Array.iterable_allowed Edge8/2/2016 Safari9/20/201649
javascript.builtins.Int8Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Int8Array.Int8Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Int8Array.Int8Array.constructor_without_parameters Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Int8Array.Int8Array.iterable_allowed Edge8/2/2016 Safari9/20/201649
javascript.builtins.Intl 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.Collator 📋Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the Collator() constructor for more details.
javascript.builtins.Intl.Collator.Collator 📋Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the Collator instance silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Intl.Collator.Collator.options_caseFirst_parameter Safari9/19/2017 Edge10/2/2018378
javascript.builtins.Intl.Collator.Collator.options_collation_parameter Edge10/9/2020 Safari4/26/2021199
javascript.builtins.Intl.Collator.Collator.options_ignorePunctuation_parameter Safari9/20/2016 Edge1/15/20201212
javascript.builtins.Intl.Collator.Collator.options_localeMatcher_parameter Safari9/20/2016 Edge1/15/20201212
javascript.builtins.Intl.Collator.Collator.options_numeric_parameter Safari9/20/2016 Edge1/15/20201212
javascript.builtins.Intl.Collator.Collator.options_sensitivity_parameter Safari9/20/2016 Edge1/15/20201212
javascript.builtins.Intl.Collator.Collator.options_usage_parameter Safari9/20/2016 Edge1/15/20201212
javascript.builtins.Intl.Collator.compare 📋Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the Collator() constructor for more details.
javascript.builtins.Intl.Collator.resolvedOptions 📋Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the Collator() constructor for more details.
javascript.builtins.Intl.Collator.supportedLocalesOf 📋Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Intl.DateTimeFormat 📋Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the DateTimeFormat() constructor for more details.
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat 📋Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the DateTimeFormat instance silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.IntlLegacyConstructedSymbol 📋Safari4/26/2021 Edge5/27/202131
Chrome: The fallback symbol property has description IntlFallback.Chrome Android: The fallback symbol property has description IntlFallback.Edge: The fallback symbol property has description IntlFallback.Node.js: The fallback symbol property has description IntlFallback.Quest Browser: The fallback symbol property has description IntlFallback.Opera: The fallback symbol property has description IntlFallback.Opera Android: The fallback symbol property has description IntlFallback.Samsung Internet: The fallback symbol property has description IntlFallback.WebView Android: The fallback symbol property has description IntlFallback.
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.locales_parameter Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the DateTimeFormat instance silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.options_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.options_parameter.options_calendar_parameter Edge2/7/2020 Safari4/26/2021444
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.options_parameter.options_dateStyle_parameter Edge1/15/2020 Safari4/26/2021467
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.options_parameter.options_dayPeriod_parameter Safari4/26/2021 Edge7/22/202187
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.options_parameter.options_fractionalSecondDigits_parameter Edge7/16/2020 Safari4/26/2021284
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.options_parameter.options_hourCycle_parameter Edge10/2/2018 Safari9/19/2019352
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.options_parameter.options_numberingSystem_parameter Edge2/7/2020 Safari4/26/2021444
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.options_parameter.options_timeStyle_parameter Edge1/15/2020 Safari4/26/2021467
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.options_parameter.options_timeZoneName_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.options_parameter.options_timeZoneName_parameter.extended_values Edge10/21/2021 Safari3/14/2022144
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.options_parameter.options_timeZone_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.DateTimeFormat.DateTimeFormat.options_parameter.options_timeZone_parameter.iana_time_zones Edge8/2/2016 Safari9/20/201649
javascript.builtins.Intl.DateTimeFormat.format 📋Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the DateTimeFormat() constructor for more details.
javascript.builtins.Intl.DateTimeFormat.formatRange 📋Edge1/15/2020 Safari4/26/2021467
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the DateTimeFormat() constructor for more details.
javascript.builtins.Intl.DateTimeFormat.formatRangeToParts 📋Edge1/15/2020 Safari4/26/2021467
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the DateTimeFormat() constructor for more details.
javascript.builtins.Intl.DateTimeFormat.formatToParts 📋Safari9/19/2017 Edge10/2/2018378
Chrome: Before version 71, formatToParts() returned an object with an incorrectly cased type key of dayperiod. Version 71 and later use the specification defined dayPeriod. See bug 41402623.Chrome Android: Before version 71, formatToParts() returned an object with an incorrectly cased type key of dayperiod. Version 71 and later use the specification defined dayPeriod. See bug 41402623.Node.js: Before version 12.0.0, formatToParts() returned an object with an incorrectly cased type key of dayperiod. Version 12.0.0 and later use the specification defined dayPeriod. See bug 41402623.Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the DateTimeFormat() constructor for more details.Quest Browser: Before version 6.0, formatToParts() returned an object with an incorrectly cased type key of dayperiod. Version 71 and later use the specification defined dayPeriod. See bug 41402623.Opera: Before version 58, formatToParts() returned an object with an incorrectly cased type key of dayperiod. Version 58 and later use the specification defined dayPeriod. See bug 41402623.Opera Android: Before version 50, formatToParts() returned an object with an incorrectly cased type key of dayperiod. Version 50 and later use the specification defined dayPeriod. See bug 41402623.Samsung Internet: Before version 71, formatToParts() returned an object with an incorrectly cased type key of dayperiod. Version 71 and later use the specification defined dayPeriod. See bug 41402623.WebView Android: Before version 71, formatToParts() returned an object with an incorrectly cased type key of dayperiod. Version 71 and later use the specification defined dayPeriod. See bug 41402623.
javascript.builtins.Intl.DateTimeFormat.resolvedOptions 📋Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the DateTimeFormat() constructor for more details.
javascript.builtins.Intl.DateTimeFormat.resolvedOptions.computed_timezone Edge8/2/2016 Safari9/20/201649
javascript.builtins.Intl.DateTimeFormat.supportedLocalesOf 📋Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Intl.DisplayNames 📋Edge4/13/2020 Safari4/26/2021378
javascript.builtins.Intl.DisplayNames.DisplayNames 📋Edge4/13/2020 Safari4/26/2021378
javascript.builtins.Intl.DisplayNames.of 📋Edge4/13/2020 Safari4/26/2021378
javascript.builtins.Intl.DisplayNames.resolvedOptions 📋Edge4/13/2020 Safari4/26/2021378
javascript.builtins.Intl.DisplayNames.supportedLocalesOf 📋Edge4/13/2020 Safari4/26/2021378
javascript.builtins.Intl.DurationFormat 📋Safari3/27/2023 Edge9/19/2024542
javascript.builtins.Intl.DurationFormat.DurationFormat 📋Safari3/27/2023 Edge9/19/2024542
javascript.builtins.Intl.DurationFormat.format 📋Safari3/27/2023 Edge9/19/2024542
javascript.builtins.Intl.DurationFormat.formatToParts 📋Safari3/27/2023 Edge9/19/2024542
javascript.builtins.Intl.DurationFormat.resolvedOptions 📋Safari3/27/2023 Edge9/19/2024542
javascript.builtins.Intl.DurationFormat.supportedLocalesOf 📋Safari3/27/2023 Edge9/19/2024542
javascript.builtins.Intl.ListFormat 📋Edge1/15/2020 Safari4/26/2021467
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the ListFormat() constructor for more details.Safari: Only available on macOS Big Sur (11) and above.
javascript.builtins.Intl.ListFormat.ListFormat 📋Edge1/15/2020 Safari4/26/2021467
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the ListFormat instance silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.Safari: Only available on macOS Big Sur (11) and above.
javascript.builtins.Intl.ListFormat.format 📋Edge1/15/2020 Safari4/26/2021467
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the ListFormat() constructor for more details.Safari: Only available on macOS Big Sur (11) and above.
javascript.builtins.Intl.ListFormat.formatToParts 📋Edge1/15/2020 Safari4/26/2021467
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the ListFormat() constructor for more details.Safari: Only available on macOS Big Sur (11) and above.
javascript.builtins.Intl.ListFormat.resolvedOptions 📋Edge1/15/2020 Safari4/26/2021467
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the ListFormat() constructor for more details.Safari: Only available on macOS Big Sur (11) and above.
javascript.builtins.Intl.ListFormat.supportedLocalesOf 📋Edge1/15/2020 Safari4/26/2021467
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.Safari: Only available on macOS Big Sur (11) and above.
javascript.builtins.Intl.Locale 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.Locale 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.baseName 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.calendar 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.caseFirst 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.collation 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.getCalendars 📋Safari9/18/2023 Edge10/17/2024395
Chrome: Implemented as an accessor property.Chrome Android: Implemented as an accessor property.Edge: Implemented as an accessor property.Node.js: Implemented as an accessor property.Quest Browser: Implemented as an accessor property.Opera: Implemented as an accessor property.Opera Android: Implemented as an accessor property.Safari: Implemented as an accessor property.Safari on iOS: Implemented as an accessor property.Samsung Internet: Implemented as an accessor property.WebView Android: Implemented as an accessor property.WebView on iOS: Implemented as an accessor property.
javascript.builtins.Intl.Locale.getCollations 📋Safari9/18/2023 Edge10/17/2024395
Chrome: Implemented as an accessor property.Chrome Android: Implemented as an accessor property.Edge: Implemented as an accessor property.Node.js: Implemented as an accessor property.Quest Browser: Implemented as an accessor property.Opera: Implemented as an accessor property.Opera Android: Implemented as an accessor property.Safari: Implemented as an accessor property.Safari on iOS: Implemented as an accessor property.Samsung Internet: Implemented as an accessor property.WebView Android: Implemented as an accessor property.WebView on iOS: Implemented as an accessor property.
javascript.builtins.Intl.Locale.getHourCycles 📋Safari9/18/2023 Edge10/17/2024395
Chrome: Implemented as an accessor property.Chrome Android: Implemented as an accessor property.Edge: Implemented as an accessor property.Node.js: Implemented as an accessor property.Quest Browser: Implemented as an accessor property.Opera: Implemented as an accessor property.Opera Android: Implemented as an accessor property.Safari: Implemented as an accessor property.Safari on iOS: Implemented as an accessor property.Samsung Internet: Implemented as an accessor property.WebView Android: Implemented as an accessor property.WebView on iOS: Implemented as an accessor property.
javascript.builtins.Intl.Locale.getNumberingSystems 📋Safari9/18/2023 Edge10/17/2024395
Chrome: Implemented as an accessor property.Chrome Android: Implemented as an accessor property.Edge: Implemented as an accessor property.Node.js: Implemented as an accessor property.Quest Browser: Implemented as an accessor property.Opera: Implemented as an accessor property.Opera Android: Implemented as an accessor property.Safari: Implemented as an accessor property.Safari on iOS: Implemented as an accessor property.Samsung Internet: Implemented as an accessor property.WebView Android: Implemented as an accessor property.WebView on iOS: Implemented as an accessor property.
javascript.builtins.Intl.Locale.getTextInfo 📋Safari9/18/2023 Edge10/17/2024395
Chrome: Implemented as an accessor property.Chrome Android: Implemented as an accessor property.Deno: Implemented as an accessor property.Edge: Implemented as an accessor property.Node.js: Implemented as an accessor property.Quest Browser: Implemented as an accessor property.Opera: Implemented as an accessor property.Opera Android: Implemented as an accessor property.Safari: Implemented as an accessor property.Safari on iOS: Implemented as an accessor property.Samsung Internet: Implemented as an accessor property.WebView Android: Implemented as an accessor property.WebView on iOS: Implemented as an accessor property.
javascript.builtins.Intl.Locale.getTimeZones 📋Safari9/18/2023 Edge10/17/2024395
Chrome: Implemented as an accessor property.Chrome Android: Implemented as an accessor property.Edge: Implemented as an accessor property.Node.js: Implemented as an accessor property.Quest Browser: Implemented as an accessor property.Opera: Implemented as an accessor property.Opera Android: Implemented as an accessor property.Safari: Implemented as an accessor property.Safari on iOS: Implemented as an accessor property.Samsung Internet: Implemented as an accessor property.WebView Android: Implemented as an accessor property.WebView on iOS: Implemented as an accessor property.
javascript.builtins.Intl.Locale.getWeekInfo 📋Safari9/18/2023 Edge10/17/2024395
Chrome: Implemented as an accessor property.Chrome Android: Implemented as an accessor property.Deno: Implemented as an accessor property.Edge: Implemented as an accessor property.Node.js: Implemented as an accessor property.Quest Browser: Implemented as an accessor property.Opera: Implemented as an accessor property.Opera Android: Implemented as an accessor property.Safari: Implemented as an accessor property.Safari on iOS: Implemented as an accessor property.Samsung Internet: Implemented as an accessor property.WebView Android: Implemented as an accessor property.WebView on iOS: Implemented as an accessor property.
javascript.builtins.Intl.Locale.hourCycle 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.language 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.maximize 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.minimize 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.numberingSystem 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.numeric 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.region 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.script 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.Locale.toString 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.NumberFormat 📋Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the NumberFormat() constructor for more details.
javascript.builtins.Intl.NumberFormat.NumberFormat 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.NumberFormat.NumberFormat.IntlLegacyConstructedSymbol 📋Safari4/26/2021 Edge5/27/202131
Chrome: The fallback symbol property has description IntlFallback.Chrome Android: The fallback symbol property has description IntlFallback.Edge: The fallback symbol property has description IntlFallback.Node.js: The fallback symbol property has description IntlFallback.Quest Browser: The fallback symbol property has description IntlFallback.Opera: The fallback symbol property has description IntlFallback.Opera Android: The fallback symbol property has description IntlFallback.Samsung Internet: The fallback symbol property has description IntlFallback.WebView Android: The fallback symbol property has description IntlFallback.
javascript.builtins.Intl.NumberFormat.NumberFormat.locales_parameter Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the NumberFormat instance silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_compactDisplay_parameter Edge1/15/2020 Safari4/26/2021467
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_currencyDisplay_parameter Edge1/15/2020 Safari4/26/2021467
Safari: Doesn't support currencyDisplay: 'narrowSymbol'.Safari on iOS: Doesn't support currencyDisplay: 'narrowSymbol'.WebView on iOS: Doesn't support currencyDisplay: 'narrowSymbol'.
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_currencySign_parameter Edge1/15/2020 Safari4/26/2021467
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_currency_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_localeMatcher_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_maximumFractionDigits_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_maximumSignificantDigits_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_minimumFractionDigits_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_minimumIntegerDigits_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_minimumSignificantDigits_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_notation_parameter Edge1/15/2020 Safari4/26/2021467
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_numberingSystem_parameter Edge7/29/2015 Safari4/26/20212098
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_roundingIncrement_parameter Safari3/14/2022 Edge10/3/2022203
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_roundingMode_parameter Safari3/14/2022 Edge10/3/2022203
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_roundingPriority_parameter Safari3/14/2022 Edge10/3/2022203
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_signDisplay_parameter Edge1/15/2020 Safari4/26/2021467
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_signDisplay_parameter.negative Safari3/14/2022 Edge10/3/2022203
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_style_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_trailingZeroDisplay_parameter Safari3/14/2022 Edge10/3/2022203
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_unitDisplay_parameter Edge1/15/2020 Safari4/26/2021467
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_unit_parameter Edge1/15/2020 Safari4/26/2021467
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_useGrouping_parameter Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the NumberFormat instance silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Intl.NumberFormat.NumberFormat.options_parameter.options_useGrouping_parameter.string_values Edge10/3/2022 Safari3/27/2023175
javascript.builtins.Intl.NumberFormat.format 📋Edge7/29/2015 Safari9/20/2016419
Edge: Before Edge 18, numbers are rounded to 15 decimal digits. For example, new Intl.NumberFormat('en-US').format(1000000000000005) returns "1,000,000,000,000,010".Internet Explorer: In Internet Explorer 11, numbers are rounded to 15 decimal digits. For example, new Intl.NumberFormat('en-US').format(1000000000000005) returns "1,000,000,000,000,010".Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the NumberFormat() constructor for more details.
javascript.builtins.Intl.NumberFormat.format.number_parameter-string_decimal Safari3/14/2022 Edge10/3/2022203
javascript.builtins.Intl.NumberFormat.formatRange 📋Safari3/14/2022 Edge10/3/2022203
javascript.builtins.Intl.NumberFormat.formatRangeToParts 📋Safari3/14/2022 Edge10/3/2022203
javascript.builtins.Intl.NumberFormat.formatToParts 📋Edge7/29/2015 Safari9/19/20191513
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the NumberFormat() constructor for more details.
javascript.builtins.Intl.NumberFormat.resolvedOptions 📋Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the NumberFormat() constructor for more details.
javascript.builtins.Intl.NumberFormat.supportedLocalesOf 📋Edge7/29/2015 Safari9/20/2016419
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Intl.PluralRules 📋Edge10/2/2018 Safari9/19/2019352
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the PluralRules() constructor for more details.
javascript.builtins.Intl.PluralRules.PluralRules 📋Edge10/2/2018 Safari9/19/2019352
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the PluralRules instance silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Intl.PluralRules.PluralRules.options_parameter Safari3/14/2022 Edge10/3/2022203
javascript.builtins.Intl.PluralRules.PluralRules.options_parameter.options_roundingMode_parameter Edge9/15/2023 Safari12/11/202387
javascript.builtins.Intl.PluralRules.PluralRules.options_parameter.options_roundingPriority_parameter Safari3/14/2022 Edge10/3/2022203
javascript.builtins.Intl.PluralRules.resolvedOptions 📋Edge10/2/2018 Safari9/19/2019352
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the PluralRules() constructor for more details.
javascript.builtins.Intl.PluralRules.select 📋Edge10/2/2018 Safari9/19/2019352
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the PluralRules() constructor for more details.
javascript.builtins.Intl.PluralRules.selectRange 📋Safari3/14/2022 Edge10/3/2022203
javascript.builtins.Intl.PluralRules.supportedLocalesOf 📋Edge10/2/2018 Safari9/19/2019352
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the PluralRules() constructor for more details.
javascript.builtins.Intl.RelativeTimeFormat 📋Edge1/15/2020 Safari9/16/2020245
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the RelativeTimeFormat() constructor for more details.
javascript.builtins.Intl.RelativeTimeFormat.RelativeTimeFormat 📋Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.RelativeTimeFormat.RelativeTimeFormat.locales_parameter Edge1/15/2020 Safari9/16/2020245
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the RelativeTimeFormat instance silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Intl.RelativeTimeFormat.RelativeTimeFormat.options_parameter.options_localeMatcher_parameter Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.RelativeTimeFormat.RelativeTimeFormat.options_parameter.options_numberingSystem_parameter Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.RelativeTimeFormat.RelativeTimeFormat.options_parameter.options_numeric_parameter Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Intl.RelativeTimeFormat.format 📋Edge1/15/2020 Safari9/16/2020245
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the RelativeTimeFormat() constructor for more details.
javascript.builtins.Intl.RelativeTimeFormat.formatToParts 📋Edge1/15/2020 Safari9/16/2020245
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the RelativeTimeFormat() constructor for more details.
javascript.builtins.Intl.RelativeTimeFormat.resolvedOptions 📋Edge1/15/2020 Safari9/16/2020245
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. See the RelativeTimeFormat() constructor for more details.
javascript.builtins.Intl.RelativeTimeFormat.supportedLocalesOf 📋Edge1/15/2020 Safari9/16/2020245
Node.js: Before version 13.0.0, only the locale data for en-US is available by default. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Intl.Segmenter 📋Edge11/19/2020 Safari4/26/2021158
javascript.builtins.Intl.Segmenter.Segmenter 📋Edge11/19/2020 Safari4/26/2021158
javascript.builtins.Intl.Segmenter.resolvedOptions 📋Edge11/19/2020 Safari4/26/2021158
javascript.builtins.Intl.Segmenter.segment 📋Edge11/19/2020 Safari4/26/2021158
javascript.builtins.Intl.Segmenter.supportedLocalesOf 📋Edge11/19/2020 Safari4/26/2021158
javascript.builtins.Intl.Segments 📋Edge11/19/2020 Safari4/26/2021158
javascript.builtins.Intl.Segments.@@iterator 📋Edge11/19/2020 Safari4/26/2021158
javascript.builtins.Intl.Segments.containing 📋Edge11/19/2020 Safari4/26/2021158
javascript.builtins.Intl.getCanonicalLocales 📋Safari3/27/2017 Edge10/17/2017204
javascript.builtins.Intl.supportedValuesOf 📋Edge3/3/2022 Safari3/14/202211
javascript.builtins.Intl.supportedValuesOf.key_parameter_calendar Edge3/3/2022 Safari3/14/202211
javascript.builtins.Intl.supportedValuesOf.key_parameter_collation Edge3/3/2022 Safari3/14/202211
javascript.builtins.Intl.supportedValuesOf.key_parameter_currency Edge3/3/2022 Safari3/14/202211
javascript.builtins.Intl.supportedValuesOf.key_parameter_numberingSystem Edge3/3/2022 Safari3/14/202211
javascript.builtins.Intl.supportedValuesOf.key_parameter_timeZone Edge3/3/2022 Safari3/14/202211
javascript.builtins.Intl.supportedValuesOf.key_parameter_unit Edge3/3/2022 Safari3/14/202211
javascript.builtins.Iterator 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Iterator.@@iterator 📋Edge7/29/2015 Safari9/20/2016419
Firefox: A placeholder property named @@iterator is used.Firefox: A placeholder property named iterator is used.Firefox for Android: A placeholder property named @@iterator is used.Firefox for Android: A placeholder property named iterator is used.
javascript.builtins.Iterator.Iterator 📋Edge2/23/2024 Safari3/31/2025402
javascript.builtins.Iterator.drop 📋Edge2/23/2024 Safari3/31/2025402
javascript.builtins.Iterator.every 📋Edge2/23/2024 Safari3/31/2025402
javascript.builtins.Iterator.filter 📋Edge2/23/2024 Safari3/31/2025402
javascript.builtins.Iterator.find 📋Edge2/23/2024 Safari3/31/2025402
javascript.builtins.Iterator.flatMap 📋Edge2/23/2024 Safari3/31/2025402
javascript.builtins.Iterator.forEach 📋Edge2/23/2024 Safari3/31/2025402
javascript.builtins.Iterator.from 📋Edge2/23/2024 Safari3/31/2025402
javascript.builtins.Iterator.map 📋Edge2/23/2024 Safari3/31/2025402
javascript.builtins.Iterator.reduce 📋Edge2/23/2024 Safari3/31/2025402
javascript.builtins.Iterator.some 📋Edge2/23/2024 Safari3/31/2025402
javascript.builtins.Iterator.take 📋Edge2/23/2024 Safari3/31/2025402
javascript.builtins.Iterator.toArray 📋Edge2/23/2024 Safari3/31/2025402
javascript.builtins.JSON 📋Safari6/8/2009 Edge7/29/20152242
javascript.builtins.JSON.json_superset Safari9/17/2018 Edge1/15/2020485
javascript.builtins.JSON.parse 📋Safari6/8/2009 Edge7/29/20152242
javascript.builtins.JSON.parse.reviver_parameter_context_argument 📋Edge6/2/2023 Safari3/31/2025668
javascript.builtins.JSON.stringify 📋Safari6/8/2009 Edge7/29/20152242
javascript.builtins.JSON.stringify.well_formed_stringify Safari3/25/2019 Edge1/15/2020296
javascript.builtins.Map 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Map.@@iterator 📋Edge7/29/2015 Safari9/20/2016419
Firefox: A placeholder property named @@iterator is used.Firefox: A placeholder property named iterator is used.Firefox for Android: A placeholder property named @@iterator is used.Firefox for Android: A placeholder property named iterator is used.
javascript.builtins.Map.@@species 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.Map.Map 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Map.Map.iterable_allowed Edge7/29/2015 Safari9/30/201563
javascript.builtins.Map.Map.null_allowed Edge7/29/2015 Safari9/30/201563
javascript.builtins.Map.clear 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Map.delete 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Map.entries 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Map.forEach 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Map.get 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Map.getOrInsert 📋Safari12/12/2025 Edge2/14/202664
javascript.builtins.Map.getOrInsertComputed 📋Safari12/12/2025 Edge2/14/202664
javascript.builtins.Map.groupBy 📋Edge9/15/2023 Safari3/5/2024172
javascript.builtins.Map.has 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Map.key_equality_for_zeros Edge7/29/2015 Safari9/30/201563
javascript.builtins.Map.keys 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Map.set 📋Safari10/16/2014 Edge7/29/2015286
Internet Explorer: Returns 'undefined' instead of the 'Map' object.
javascript.builtins.Map.size 📋Safari10/16/2014 Edge7/29/2015286
Firefox: From Firefox 13 to Firefox 18, the size property was implemented as a Map.prototype.size() method, this has been changed to a property in later versions conform to the ECMAScript 2015 specification.Firefox for Android: From Firefox for Android 14 to Firefox for Android 18, the size property was implemented as a Map.prototype.size() method, this has been changed to a property in later versions conform to the ECMAScript 2015 specification.
javascript.builtins.Map.values 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.E 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.LN10 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.LN2 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.LOG10E 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.LOG2E 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.PI 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.SQRT1_2 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.SQRT2 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.abs 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.acos 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.acosh 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math.asin 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.asinh 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math.atan 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.atan2 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.atanh 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math.cbrt 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math.ceil 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.clz32 📋Safari10/22/2013 Edge7/29/2015645
javascript.builtins.Math.cos 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.cosh 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math.exp 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.expm1 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math.f16round 📋Safari12/11/2024 Edge4/4/2025114
javascript.builtins.Math.floor 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.fround 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math.hypot 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math.imul 📋Safari10/22/2013 Edge7/29/2015645
javascript.builtins.Math.log 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.log10 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math.log1p 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math.log2 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math.max 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.min 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.pow 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.random 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.round 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.sign 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Math.sin 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.sinh 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math.sqrt 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.tan 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Math.tanh 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Math.trunc 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.NaN 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Number 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Number.EPSILON 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Number.MAX_SAFE_INTEGER 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Number.MAX_VALUE 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Number.MIN_SAFE_INTEGER 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Number.MIN_VALUE 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Number.NEGATIVE_INFINITY 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Number.NaN 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Number.Number 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Number.POSITIVE_INFINITY 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Number.isFinite 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Number.isInteger 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Number.isNaN 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Number.isSafeInteger 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Number.parseFloat 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Number.parseInt 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Number.toExponential 📋Safari4/29/2005 Edge7/29/20153743
javascript.builtins.Number.toFixed 📋Safari4/29/2005 Edge7/29/20153743
javascript.builtins.Number.toLocaleString 📋Safari6/23/2003 Edge7/29/20154419
Edge: Before Edge 18, numbers are rounded to 15 decimal digits. For example, (1000000000000005).toLocaleString('en-US') returns "1,000,000,000,000,010".Internet Explorer: In Internet Explorer 11, numbers are rounded to 15 decimal digits. For example, (1000000000000005).toLocaleString('en-US') returns "1,000,000,000,000,010".
javascript.builtins.Number.toLocaleString.locales_parameter Edge7/29/2015 Safari9/20/2016419
Deno: Only the locale data for en-US is available.Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the function silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.Number.toLocaleString.options_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Number.toPrecision 📋Safari4/29/2005 Edge7/29/20153743
javascript.builtins.Number.toString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Number.valueOf 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Object 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Object.Object 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Object.assign 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Object.constructor 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Object.create 📋Safari6/7/2010 Edge7/29/20151878
javascript.builtins.Object.defineGetter 📋Safari10/26/2007 Edge7/29/20152833
Firefox: Starting with Firefox 48, this method can no longer be called at the global scope without any object. A TypeError will be thrown otherwise. Previously, the global object was used in these cases automatically, but this is no longer the case.
javascript.builtins.Object.defineProperties 📋Safari6/7/2010 Edge7/29/20151878
javascript.builtins.Object.defineProperty 📋Safari7/20/2011 Edge7/29/20151470
Internet Explorer: In Internet Explorer 8, this was only supported on DOM objects and with some non-standard behaviors. This was later fixed in Internet Explorer 9.Safari: Also supported in Safari 5, but not on DOM objects.Safari on iOS: Also supported in Safari for iOS 4.2, but not on DOM objects.WebView on iOS: Also supported in Safari for iOS 4.2, but not on DOM objects.
javascript.builtins.Object.defineSetter 📋Safari10/26/2007 Edge7/29/20152833
Firefox: Starting with Firefox 48, this method can no longer be called at the global scope without any object. A TypeError will be thrown otherwise. Previously, the global object was used in these cases automatically, but this is no longer the case.
javascript.builtins.Object.entries 📋Edge8/2/2016 Safari3/27/2017237
javascript.builtins.Object.freeze 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Object.fromEntries 📋Safari3/25/2019 Edge1/15/2020296
javascript.builtins.Object.getOwnPropertyDescriptor 📋Safari6/7/2010 Edge7/29/20151878
Internet Explorer: In Internet Explorer 8, this was only supported on DOM objects and with some non-standard behaviors. This was later fixed in Internet Explorer 9.
javascript.builtins.Object.getOwnPropertyDescriptors 📋Safari9/20/2016 Edge4/5/2017197
javascript.builtins.Object.getOwnPropertyNames 📋Safari6/7/2010 Edge7/29/20151878
javascript.builtins.Object.getOwnPropertySymbols 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Object.getPrototypeOf 📋Safari6/7/2010 Edge7/29/20151878
javascript.builtins.Object.groupBy 📋Edge9/15/2023 Safari3/5/2024172
javascript.builtins.Object.hasOwn 📋Edge9/2/2021 Safari3/14/2022193
javascript.builtins.Object.hasOwnProperty 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Object.is 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Object.isExtensible 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Object.isFrozen 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Object.isPrototypeOf 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Object.isSealed 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Object.keys 📋Safari6/7/2010 Edge7/29/20151878
javascript.builtins.Object.lookupGetter 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Object.lookupSetter 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Object.preventExtensions 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Object.preventExtensions.ES2015_behavior Edge7/29/2015 Safari9/30/201563
javascript.builtins.Object.propertyIsEnumerable 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Object.proto 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.Object.seal 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Object.setPrototypeOf 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Object.toLocaleString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Object.toString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Object.valueOf 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Object.values 📋Edge8/2/2016 Safari3/27/2017237
javascript.builtins.Promise 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Promise.@@species 📋Safari9/20/2016 Edge1/15/20201212
javascript.builtins.Promise.Promise 📋Safari10/16/2014 Edge7/29/2015286
Firefox: Constructor requires a new operator since version 37.Firefox for Android: Constructor requires a new operator since version 37.Node.js: Constructor requires a new operator since version 4.Safari: Constructor requires a new operator since version 10.Safari on iOS: Constructor requires a new operator since version 10.WebView on iOS: Constructor requires a new operator since version 10.
javascript.builtins.Promise.all 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Promise.allSettled 📋Safari9/19/2019 Edge1/15/2020118
javascript.builtins.Promise.any 📋Edge8/27/2020 Safari9/16/202020
javascript.builtins.Promise.catch 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Promise.finally 📋Safari4/12/2018 Edge10/2/2018173
javascript.builtins.Promise.race 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Promise.reject 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Promise.resolve 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Promise.then 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Promise.try 📋Edge8/22/2024 Safari12/11/2024111
javascript.builtins.Promise.withResolvers 📋Edge11/2/2023 Safari3/5/2024124
javascript.builtins.Proxy 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Proxy.Proxy 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Proxy.handler.apply 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Proxy.handler.construct 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Proxy.handler.defineProperty 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Proxy.handler.deleteProperty 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Proxy.handler.get 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Proxy.handler.getOwnPropertyDescriptor 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Proxy.handler.getPrototypeOf 📋Safari9/20/2016 Edge1/15/20201212
javascript.builtins.Proxy.handler.has 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Proxy.handler.isExtensible 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Proxy.handler.ownKeys 📋Edge7/29/2015 Safari9/20/2016419
Firefox: In Firefox 42, the implementation got updated to reflect the final ES2015 specification: The result is now checked if it is an array and if the array elements are either of type string or of type symbol. Enumerating duplicate own property names is not a failure anymore.Firefox for Android: In Firefox for Android 42, the implementation got updated to reflect the final ES2015 specification: The result is now checked if it is an array and if the array elements are either of type string or of type symbol. Enumerating duplicate own property names is not a failure anymore.
javascript.builtins.Proxy.handler.preventExtensions 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Proxy.handler.set 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Proxy.handler.setPrototypeOf 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Proxy.revocable 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.RangeError 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.RangeError.RangeError 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.ReferenceError 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.ReferenceError.ReferenceError 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Reflect 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Reflect.apply 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Reflect.construct 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Reflect.defineProperty 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Reflect.deleteProperty 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Reflect.get 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Reflect.getOwnPropertyDescriptor 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Reflect.getPrototypeOf 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Reflect.has 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Reflect.isExtensible 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Reflect.ownKeys 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Reflect.preventExtensions 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Reflect.set 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Reflect.setPrototypeOf 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.RegExp 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.RegExp.@@match 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.RegExp.@@matchAll 📋Safari9/19/2019 Edge1/15/2020118
javascript.builtins.RegExp.@@replace 📋Safari9/20/2016 Edge1/15/20201212
javascript.builtins.RegExp.@@search 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.RegExp.@@species 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.RegExp.@@split 📋Safari9/20/2016 Edge1/15/20201212
javascript.builtins.RegExp.RegExp 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.RegExp.compile 📋Safari3/18/2008 Edge7/29/20152689
javascript.builtins.RegExp.dotAll 📋Safari4/12/2018 Edge1/15/2020643
javascript.builtins.RegExp.escape 📋Safari12/11/2024 Edge5/1/2025141
javascript.builtins.RegExp.exec 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.RegExp.flags 📋Safari9/30/2015 Edge1/15/20201568
javascript.builtins.RegExp.global 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.RegExp.global.prototype_accessor Safari4/15/2005 Edge7/29/20153757
javascript.builtins.RegExp.hasIndices 📋Edge4/15/2021 Safari9/20/2021158
javascript.builtins.RegExp.ignoreCase 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.RegExp.ignoreCase.prototype_accessor Safari4/15/2005 Edge7/29/20153757
javascript.builtins.RegExp.input 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.RegExp.lastIndex 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.RegExp.lastMatch 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.RegExp.lastParen 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.RegExp.leftContext 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.RegExp.multiline 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.RegExp.multiline.prototype_accessor Safari4/15/2005 Edge7/29/20153757
javascript.builtins.RegExp.n 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.RegExp.rightContext 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.RegExp.source 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.RegExp.source.empty_regex_string Safari6/7/2010 Edge7/29/20151878
javascript.builtins.RegExp.source.escaping Safari7/25/2012 Edge7/29/20151099
javascript.builtins.RegExp.source.prototype_accessor Safari4/15/2005 Edge7/29/20153757
javascript.builtins.RegExp.sticky 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.RegExp.sticky.anchored_sticky_flag Edge11/12/2015 Safari9/20/2016313
javascript.builtins.RegExp.sticky.prototype_accessor Edge11/12/2015 Safari9/20/2016313
javascript.builtins.RegExp.test 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.RegExp.toString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.RegExp.toString.escaping Safari7/25/2012 Edge7/29/20151099
javascript.builtins.RegExp.unicode 📋Edge7/29/2015 Safari9/20/2016419
Edge: Case folding is implemented in version 13Node.js: Case folding is implemented in version 8.6.0
javascript.builtins.RegExp.unicodeSets 📋Edge4/6/2023 Safari9/18/2023165
javascript.builtins.Set 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Set.@@iterator 📋Edge7/29/2015 Safari9/30/201563
Firefox: A placeholder property named @@iterator is used.Firefox: A placeholder property named iterator is used.Firefox for Android: A placeholder property named @@iterator is used.Firefox for Android: A placeholder property named iterator is used.
javascript.builtins.Set.@@species 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.Set.Set 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Set.Set.iterable_allowed Edge7/29/2015 Safari9/30/201563
javascript.builtins.Set.Set.null_allowed Edge7/29/2015 Safari9/30/201563
javascript.builtins.Set.add 📋Safari10/16/2014 Edge7/29/2015286
Internet Explorer: Returns 'undefined' instead of the 'Set' object.
javascript.builtins.Set.clear 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Set.delete 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Set.difference 📋Safari9/18/2023 Edge2/23/2024158
javascript.builtins.Set.entries 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Set.forEach 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Set.has 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Set.intersection 📋Safari9/18/2023 Edge2/23/2024158
javascript.builtins.Set.isDisjointFrom 📋Safari9/18/2023 Edge2/23/2024158
javascript.builtins.Set.isSubsetOf 📋Safari9/18/2023 Edge2/23/2024158
javascript.builtins.Set.isSupersetOf 📋Safari9/18/2023 Edge2/23/2024158
javascript.builtins.Set.key_equality_for_zeros Edge7/29/2015 Safari9/30/201563
javascript.builtins.Set.keys 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.Set.size 📋Safari10/16/2014 Edge7/29/2015286
Firefox: From Firefox 13 to Firefox 18, the size property was implemented as a Set.prototype.size() method, this has been changed to a property in later versions conform to the ECMAScript 2015 specification.Firefox for Android: From Firefox for Android 14 to Firefox for Android 18, the size property was implemented as a Set.prototype.size() method, this has been changed to a property in later versions conform to the ECMAScript 2015 specification.
javascript.builtins.Set.symmetricDifference 📋Safari9/18/2023 Edge2/23/2024158
javascript.builtins.Set.union 📋Safari9/18/2023 Edge2/23/2024158
javascript.builtins.Set.values 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.SharedArrayBuffer 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.SharedArrayBuffer.@@species 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.SharedArrayBuffer.SharedArrayBuffer 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.SharedArrayBuffer.SharedArrayBuffer.maxByteLength_option 📋Edge3/13/2023 Safari3/27/202314
javascript.builtins.SharedArrayBuffer.byteLength 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.SharedArrayBuffer.grow 📋Edge3/13/2023 Safari3/27/202314
javascript.builtins.SharedArrayBuffer.growable 📋Edge3/13/2023 Safari3/27/202314
javascript.builtins.SharedArrayBuffer.maxByteLength 📋Edge3/13/2023 Safari3/27/202314
javascript.builtins.SharedArrayBuffer.slice 📋Edge1/15/2020 Safari12/13/2021698
javascript.builtins.String 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.@@iterator 📋Edge7/29/2015 Safari9/30/201563
Firefox: A placeholder property named @@iterator is used.Firefox: A placeholder property named iterator is used.Firefox for Android: A placeholder property named @@iterator is used.Firefox for Android: A placeholder property named iterator is used.
javascript.builtins.String.String 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.anchor 📋Safari6/23/2003 Edge7/29/20154419
Firefox: Starting with version 17, the quotation mark (") is replaced by its HTML reference character (") in strings supplied for the name parameter.
javascript.builtins.String.at 📋Edge7/22/2021 Safari3/14/2022235
javascript.builtins.String.big 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.blink 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.bold 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.charAt 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.charCodeAt 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.codePointAt 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.String.concat 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.endsWith 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.String.fixed 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.fontcolor 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.fontsize 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.fromCharCode 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.fromCodePoint 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.String.includes 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.String.indexOf 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.isWellFormed 📋Edge3/13/2023 Safari3/27/202314
javascript.builtins.String.italics 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.lastIndexOf 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.length 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.link 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.localeCompare 📋Safari10/26/2007 Edge7/29/20152833
javascript.builtins.String.localeCompare.locales_parameter Edge7/29/2015 Safari9/20/2016419
Deno: Only the locale data for en-US is available.Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the function silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.String.localeCompare.options_parameter Edge7/29/2015 Safari9/20/2016419
javascript.builtins.String.match 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.matchAll 📋Safari9/19/2019 Edge1/15/2020118
javascript.builtins.String.normalize 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.String.padEnd 📋Safari9/20/2016 Edge4/5/2017197
javascript.builtins.String.padStart 📋Safari9/20/2016 Edge4/5/2017197
javascript.builtins.String.raw 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.String.repeat 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.String.replace 📋Safari6/23/2003 Edge7/29/20154419
Internet Explorer: A replacement function as second argument is not supported.
javascript.builtins.String.replaceAll 📋Safari3/24/2020 Edge8/27/2020156
javascript.builtins.String.search 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.slice 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.small 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.split 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.startsWith 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.String.strike 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.sub 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.substr 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.substring 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.sup 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.toLocaleLowerCase 📋Safari4/15/2005 Edge7/29/20153757
javascript.builtins.String.toLocaleLowerCase.locales_parameter Edge7/29/2015 Safari9/20/2016419
Deno: Only the locale data for en-US is available.Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the function silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.String.toLocaleUpperCase 📋Safari4/15/2005 Edge7/29/20153757
javascript.builtins.String.toLocaleUpperCase.locales_parameter Edge7/29/2015 Safari9/20/2016419
Deno: Only the locale data for en-US is available.Node.js: Before version 13.0.0, only the locale data for en-US is available by default. When other locales are specified, the function silently falls back to en-US. To make full ICU (locale) data available before version 13, see Node.js documentation on the --with-intl option and how to provide the data.
javascript.builtins.String.toLowerCase 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.toString 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.toUpperCase 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.toWellFormed 📋Edge3/13/2023 Safari3/27/202314
javascript.builtins.String.trim 📋Safari6/7/2010 Edge7/29/20151878
javascript.builtins.String.trimEnd 📋Safari9/17/2018 Edge1/15/2020485
javascript.builtins.String.trimStart 📋Safari9/17/2018 Edge1/15/2020485
javascript.builtins.String.unicode_code_point_escapes Safari6/23/2003 Edge7/29/20154419
javascript.builtins.String.valueOf 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Symbol 📋Edge7/29/2015 Safari9/30/201563
Edge: Edge 12 included Symbol properties in JSON.stringify() output.
javascript.builtins.Symbol.@@toPrimitive 📋Safari9/20/2016 Edge4/5/2017197
javascript.builtins.Symbol.Symbol 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Symbol.asyncIterator 📋Safari4/12/2018 Edge1/15/2020643
javascript.builtins.Symbol.description 📋Safari3/25/2019 Edge1/15/2020296
Safari: No support for an undefined description.Safari on iOS: No support for an undefined description.WebView on iOS: No support for an undefined description.
javascript.builtins.Symbol.for 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Symbol.hasInstance 📋Safari9/20/2016 Edge4/5/2017197
javascript.builtins.Symbol.isConcatSpreadable 📋Safari9/20/2016 Edge4/5/2017197
javascript.builtins.Symbol.iterator 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.Symbol.keyFor 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Symbol.match 📋Safari9/20/2016 Edge1/15/20201212
javascript.builtins.Symbol.matchAll 📋Safari9/19/2019 Edge1/15/2020118
javascript.builtins.Symbol.replace 📋Safari9/20/2016 Edge1/15/20201212
javascript.builtins.Symbol.search 📋Safari9/20/2016 Edge1/15/20201212
javascript.builtins.Symbol.species 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.Symbol.split 📋Safari9/20/2016 Edge1/15/20201212
javascript.builtins.Symbol.toPrimitive 📋Safari9/20/2016 Edge4/5/2017197
javascript.builtins.Symbol.toString 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Symbol.toStringTag 📋Safari9/20/2016 Edge4/5/2017197
javascript.builtins.Symbol.toStringTag.dom_objects Edge1/15/2020 Safari9/16/2020245
javascript.builtins.Symbol.unscopables 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.Symbol.valueOf 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.SyntaxError 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.SyntaxError.SyntaxError 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.TypeError 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.TypeError.TypeError 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.TypedArray 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.TypedArray.@@iterator 📋Edge7/29/2015 Safari9/20/2016419
Firefox: A placeholder property named @@iterator is used.Firefox: A placeholder property named iterator is used.Firefox for Android: A placeholder property named @@iterator is used.Firefox for Android: A placeholder property named iterator is used.
javascript.builtins.TypedArray.@@species 📋Edge11/12/2015 Safari9/20/2016313
javascript.builtins.TypedArray.BYTES_PER_ELEMENT 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.TypedArray.at 📋Edge7/22/2021 Safari3/14/2022235
javascript.builtins.TypedArray.buffer 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.TypedArray.byteLength 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.TypedArray.byteOffset 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.TypedArray.constructor_without_parameters Safari7/20/2011 Edge7/29/20151470
javascript.builtins.TypedArray.copyWithin 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.entries 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.every 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.fill 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.filter 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.find 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.findIndex 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.findLast 📋Edge1/6/2022 Safari3/14/202267
javascript.builtins.TypedArray.findLastIndex 📋Edge1/6/2022 Safari3/14/202267
javascript.builtins.TypedArray.forEach 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.from 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.includes 📋Edge8/2/2016 Safari9/20/201649
javascript.builtins.TypedArray.indexOf 📋Edge7/29/2015 Safari9/20/2016419
Firefox: Starting with Firefox 47, this method will no longer return -0. For example, new Uint8Array([0]).indexOf(0, -0) will now always return +0.Firefox for Android: Starting with Firefox for Android 47, this method will no longer return -0. For example, new Uint8Array([0]).indexOf(0, -0) will now always return +0.
javascript.builtins.TypedArray.index_properties_not_consulting_prototype Safari7/20/2011 Edge7/29/20151470
Bun: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.Chrome: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.Chrome Android: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.Deno: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.Edge: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.Internet Explorer: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.Node.js: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.Quest Browser: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.Opera: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.Opera Android: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.Safari: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.Safari on iOS: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.Samsung Internet: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.WebView Android: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.WebView on iOS: Negative integers are not considered as indexed properties and therefore return the value of the prototype property.
javascript.builtins.TypedArray.iterable_in_constructor Edge8/2/2016 Safari9/20/201649
javascript.builtins.TypedArray.join 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.keys 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.lastIndexOf 📋Edge7/29/2015 Safari9/20/2016419
Firefox: Starting with Firefox 47, this method will no longer return -0. For example, new Uint8Array([0]).lastIndexOf(0, -0) will now always return +0.Firefox for Android: Starting with Firefox for Android 47, this method will no longer return -0. For example, new Uint8Array([0]).lastIndexOf(0, -0) will now always return +0.
javascript.builtins.TypedArray.length 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.TypedArray.map 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.name 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.TypedArray.named_properties Safari7/20/2011 Edge7/29/20151470
javascript.builtins.TypedArray.of 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.reduce 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.reduceRight 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.reverse 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.set 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.TypedArray.slice 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.some 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.sort 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.subarray 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.TypedArray.toLocaleString 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.TypedArray.toReversed 📋Safari9/12/2022 Edge2/9/2023150
javascript.builtins.TypedArray.toSorted 📋Safari9/12/2022 Edge2/9/2023150
javascript.builtins.TypedArray.toString 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.TypedArray.values 📋Edge7/29/2015 Safari9/20/2016419
javascript.builtins.TypedArray.with 📋Safari9/12/2022 Edge2/9/2023150
javascript.builtins.URIError 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.URIError.URIError 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.Uint16Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Uint16Array.Uint16Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Uint16Array.Uint16Array.constructor_without_parameters Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Uint16Array.Uint16Array.iterable_allowed Edge8/2/2016 Safari9/20/201649
javascript.builtins.Uint32Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Uint32Array.Uint32Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Uint32Array.Uint32Array.constructor_without_parameters Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Uint32Array.Uint32Array.iterable_allowed Edge8/2/2016 Safari9/20/201649
javascript.builtins.Uint8Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Uint8Array.Uint8Array 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Uint8Array.Uint8Array.constructor_without_parameters Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Uint8Array.Uint8Array.iterable_allowed Edge8/2/2016 Safari9/20/201649
javascript.builtins.Uint8Array.fromBase64 📋Safari12/11/2024 Edge9/5/2025268
javascript.builtins.Uint8Array.fromHex 📋Safari12/11/2024 Edge9/5/2025268
javascript.builtins.Uint8Array.setFromBase64 📋Safari12/11/2024 Edge9/5/2025268
javascript.builtins.Uint8Array.setFromHex 📋Safari12/11/2024 Edge9/5/2025268
javascript.builtins.Uint8Array.toBase64 📋Safari12/11/2024 Edge9/5/2025268
javascript.builtins.Uint8Array.toHex 📋Safari12/11/2024 Edge9/5/2025268
javascript.builtins.Uint8ClampedArray 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Uint8ClampedArray.Uint8ClampedArray 📋Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Uint8ClampedArray.Uint8ClampedArray.constructor_without_parameters Safari7/20/2011 Edge7/29/20151470
javascript.builtins.Uint8ClampedArray.Uint8ClampedArray.iterable_allowed Edge8/2/2016 Safari9/20/201649
javascript.builtins.WeakMap 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.WeakMap.WeakMap 📋Safari10/16/2014 Edge7/29/2015286
javascript.builtins.WeakMap.WeakMap.iterable_allowed Edge7/29/2015 Safari9/30/201563
javascript.builtins.WeakMap.WeakMap.null_allowed Safari10/16/2014 Edge7/29/2015286
javascript.builtins.WeakMap.delete 📋Safari10/16/2014 Edge7/29/2015286
Firefox: Before Firefox 38, this method threw a TypeError when the key parameter was not an object. This has been fixed in version 38 and later to return false as per the ES2015 standard.Firefox for Android: Before Firefox for Android 38, this method threw a TypeError when the key parameter was not an object. This has been fixed in version 38 and later to return false as per the ES2015 standard.
javascript.builtins.WeakMap.get 📋Safari10/16/2014 Edge7/29/2015286
Firefox: Before Firefox 38, this method threw a TypeError when the key parameter was not an object. However, the ES2015 specification specifies to return undefined instead. Furthermore, WeakMap.prototype.get accepted an optional second argument as a fallback value, which is not part of the standard. Both non-standard behaviors are removed in version 38 and higher.Firefox for Android: Before Firefox for Android 38, this method threw a TypeError when the key parameter was not an object. However, the ES2015 specification specifies to return undefined instead. Furthermore, WeakMap.prototype.get accepted an optional second argument as a fallback value, which is not part of the standard. Both non-standard behaviors are removed in version 38 and higher.
javascript.builtins.WeakMap.getOrInsert 📋Safari12/12/2025 Edge2/14/202664
javascript.builtins.WeakMap.getOrInsertComputed 📋Safari12/12/2025 Edge2/14/202664
javascript.builtins.WeakMap.has 📋Safari10/16/2014 Edge7/29/2015286
Firefox: Before Firefox 38, this method threw a TypeError when the key parameter was not an object. This has been fixed in version 38 and later to return false as per the ES2015 standard.Firefox for Android: Before Firefox for Android 38, this method threw a TypeError when the key parameter was not an object. This has been fixed in version 38 and later to return false as per the ES2015 standard.
javascript.builtins.WeakMap.set 📋Safari10/16/2014 Edge7/29/2015286
Firefox: Before Firefox 38, this method threw a TypeError when the key parameter was not an object. This has been fixed in version 38 and later to return false as per the ES2015 standard.Firefox for Android: Before Firefox for Android 38, this method threw a TypeError when the key parameter was not an object. This has been fixed in version 38 and later to return false as per the ES2015 standard.Internet Explorer: Returns 'undefined' instead of the 'Map' object.
javascript.builtins.WeakMap.symbol_as_keys Edge1/12/2023 Safari3/27/202374
javascript.builtins.WeakRef 📋Edge7/16/2020 Safari4/26/2021284
javascript.builtins.WeakRef.WeakRef 📋Edge7/16/2020 Safari4/26/2021284
javascript.builtins.WeakRef.WeakRef.symbol_as_target Edge1/12/2023 Safari3/27/202374
javascript.builtins.WeakRef.deref 📋Edge7/16/2020 Safari4/26/2021284
javascript.builtins.WeakSet 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.WeakSet.WeakSet 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.WeakSet.WeakSet.iterable_allowed Edge7/29/2015 Safari9/30/201563
javascript.builtins.WeakSet.WeakSet.null_allowed Edge7/29/2015 Safari9/30/201563
javascript.builtins.WeakSet.add 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.WeakSet.delete 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.WeakSet.has 📋Edge7/29/2015 Safari9/30/201563
javascript.builtins.WeakSet.symbol_as_keys Edge1/12/2023 Safari3/27/202374
javascript.builtins.decodeURI 📋Safari10/24/2003 Edge7/29/20154296
javascript.builtins.decodeURIComponent 📋Safari10/24/2003 Edge7/29/20154296
javascript.builtins.encodeURI 📋Safari10/24/2003 Edge7/29/20154296
javascript.builtins.encodeURIComponent 📋Safari10/24/2003 Edge7/29/20154296
javascript.builtins.escape 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.eval 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.globalThis 📋Safari3/25/2019 Edge1/15/2020296
javascript.builtins.isFinite 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.isNaN 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.parseFloat 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.parseInt 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.parseInt.leading_zero_strings_as_decimal Safari7/25/2012 Edge7/29/20151099
javascript.builtins.undefined 📋Safari6/23/2003 Edge7/29/20154419
javascript.builtins.unescape 📋Safari6/23/2003 Edge7/29/20154419
javascript.classes 📋Safari9/30/2015 Edge11/12/201543
Chrome: Strict mode is required.Chrome Android: Strict mode is required.Opera: Strict mode is required.Opera Android: Strict mode is required.Samsung Internet: Strict mode is required.WebView Android: Strict mode is required.
javascript.classes.constructor 📋Safari9/30/2015 Edge11/12/201543
Chrome: Strict mode is required.Chrome Android: Strict mode is required.Opera: Strict mode is required.Opera Android: Strict mode is required.Samsung Internet: Strict mode is required.WebView Android: Strict mode is required.
javascript.classes.extends 📋Safari9/30/2015 Edge11/12/201543
Chrome: Strict mode is required.Chrome Android: Strict mode is required.Opera: Strict mode is required.Opera Android: Strict mode is required.Samsung Internet: Strict mode is required.WebView Android: Strict mode is required.
javascript.classes.private_class_fields 📋Edge1/15/2020 Safari4/26/2021467
javascript.classes.private_class_fields_in 📋Edge5/27/2021 Safari9/20/2021116
javascript.classes.private_class_methods 📋Edge7/16/2020 Safari9/20/2021431
javascript.classes.public_class_fields 📋Edge1/15/2020 Safari9/12/2022971
Safari: Parentheses in field initializers can lead to ReferenceErrors. See bug 236843.Safari: Doesn't support public static fields. See bug 194095.Safari on iOS: Parentheses in field initializers can lead to ReferenceErrors. See bug 236843.Safari on iOS: Doesn't support public static fields. See bug 194095.WebView on iOS: Parentheses in field initializers can lead to ReferenceErrors. See bug 236843.WebView on iOS: Doesn't support public static fields. See bug 194095.
javascript.classes.static 📋Safari9/30/2015 Edge11/12/201543
Chrome: Strict mode is required.Chrome Android: Strict mode is required.Opera: Strict mode is required.Opera Android: Strict mode is required.Samsung Internet: Strict mode is required.WebView Android: Strict mode is required.
javascript.classes.static.class_fields 📋Edge1/15/2020 Safari4/26/2021467
javascript.classes.static.initialization_blocks 📋Edge9/24/2021 Safari3/27/2023549
javascript.functions 📋Safari6/23/2003 Edge7/29/20154419
javascript.functions.arguments 📋Safari6/23/2003 Edge7/29/20154419
javascript.functions.arguments.@@iterator 📋Edge7/29/2015 Safari9/30/201563
javascript.functions.arguments.callee 📋Safari6/23/2003 Edge7/29/20154419
javascript.functions.arguments.length 📋Safari6/23/2003 Edge7/29/20154419
javascript.functions.arrow_functions 📋Edge7/29/2015 Safari9/20/2016419
Firefox: The initial implementation of arrow functions in Firefox made them automatically strict. This has been changed as of Firefox 24. The use of 'use strict'; is now required.Firefox: Before Firefox 39, a line terminator (\n) was incorrectly allowed after arrow function arguments. This has been fixed to conform to the ES2015 specification and code like () \n => {} will now throw a SyntaxError in this and later versions.Firefox for Android: The initial implementation of arrow functions in Firefox for Android made them automatically strict. This has been changed as of Firefox for Android 24. The use of 'use strict'; is now required.Firefox for Android: Before Firefox for Android 39, a line terminator (\n) was incorrectly allowed after arrow function arguments. This has been fixed to conform to the ES2015 specification and code like () \n => {} will now throw a SyntaxError in this and later versions.
javascript.functions.arrow_functions.trailing_comma Edge7/29/2015 Safari9/20/2016419
javascript.functions.block_level_functions Edge7/29/2015 Safari9/20/2016419
javascript.functions.default_parameters 📋Edge8/2/2016 Safari9/20/201649
javascript.functions.default_parameters.destructured_parameter_with_default_value_assignment Edge8/2/2016 Safari9/20/201649
javascript.functions.default_parameters.parameters_without_defaults_after_default_parameters Edge8/2/2016 Safari9/20/201649
javascript.functions.get 📋Safari10/26/2007 Edge7/29/20152833
javascript.functions.get.computed_property_names Edge7/29/2015 Safari3/21/2016236
javascript.functions.method_definitions 📋Edge7/29/2015 Safari9/30/201563
javascript.functions.method_definitions.async_generator_methods Safari9/17/2018 Edge1/15/2020485
javascript.functions.method_definitions.async_methods Safari3/27/2017 Edge4/5/20179
javascript.functions.method_definitions.generator_methods_not_constructable Edge11/12/2015 Safari3/21/2016130
javascript.functions.rest_parameters 📋Edge7/29/2015 Safari9/20/2016419
javascript.functions.rest_parameters.destructuring Safari9/20/2016 Edge1/15/20201212
javascript.functions.set 📋Safari10/26/2007 Edge7/29/20152833
javascript.functions.set.computed_property_names Edge7/29/2015 Safari3/21/2016236
javascript.grammar.array_literals 📋Safari6/23/2003 Edge7/29/20154419
javascript.grammar.binary_numeric_literals 📋Edge7/29/2015 Safari9/30/201563
javascript.grammar.boolean_literals 📋Safari6/23/2003 Edge7/29/20154419
javascript.grammar.decimal_numeric_literals 📋Safari6/23/2003 Edge7/29/20154419
javascript.grammar.hashbang_comments 📋Edge1/15/2020 Safari3/24/202069
javascript.grammar.hexadecimal_escape_sequences 📋Safari6/23/2003 Edge7/29/20154419
javascript.grammar.hexadecimal_numeric_literals 📋Safari6/23/2003 Edge7/29/20154419
javascript.grammar.null_literal 📋Safari6/23/2003 Edge7/29/20154419
javascript.grammar.numeric_separators 📋Safari9/19/2019 Edge1/15/2020118
javascript.grammar.octal_numeric_literals 📋Edge7/29/2015 Safari9/30/201563
javascript.grammar.regular_expression_literals 📋Safari6/23/2003 Edge7/29/20154419
javascript.grammar.shorthand_object_literals Edge7/29/2015 Safari9/30/201563
javascript.grammar.string_literals 📋Safari6/23/2003 Edge7/29/20154419
javascript.grammar.template_literals 📋Edge7/29/2015 Safari9/30/201563
javascript.grammar.template_literals.template_literal_revision Safari9/19/2017 Edge1/15/2020848
javascript.grammar.trailing_commas 📋Safari6/23/2003 Edge7/29/20154419
javascript.grammar.trailing_commas.trailing_commas_in_dynamic_import 📋Edge5/27/2021 Safari9/20/2021116
Node.js: The second parameter no longer throws a parser error, but the --experimental-json-modules flag is still needed to load JSON modules.
javascript.grammar.trailing_commas.trailing_commas_in_functions Edge8/2/2016 Safari9/20/201649
javascript.grammar.trailing_commas.trailing_commas_in_object_literals Safari10/26/2007 Edge7/29/20152833
javascript.grammar.unicode_escape_sequences 📋Safari6/23/2003 Edge7/29/20154419
javascript.grammar.unicode_point_escapes 📋Edge7/29/2015 Safari9/30/201563
javascript.operators.addition 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.addition_assignment 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.assignment 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.async_function 📋Safari3/27/2017 Edge4/5/20179
javascript.operators.async_generator_function 📋Safari9/17/2018 Edge1/15/2020485
javascript.operators.await 📋Edge8/2/2016 Safari3/27/2017237
javascript.operators.await.top_level 📋Edge3/4/2021 Safari9/20/2021200
Node.js: Not supported in CommonJS modules.Safari: Doesn't support multiple modules simultaneously importing a module containing a top-level await (see bug 242740).Safari on iOS: Doesn't support multiple modules simultaneously importing a module containing a top-level await (see bug 242740).WebView on iOS: Doesn't support multiple modules simultaneously importing a module containing a top-level await (see bug 242740).
javascript.operators.bitwise_and 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.bitwise_and_assignment 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.bitwise_not 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.bitwise_or 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.bitwise_or_assignment 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.bitwise_xor 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.bitwise_xor_assignment 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.class 📋Safari10/22/2013 Edge11/12/2015751
javascript.operators.comma 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.conditional 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.decrement 📋Safari6/8/2009 Edge7/29/20152242
javascript.operators.delete 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.destructuring 📋Safari10/16/2014 Edge8/2/2016656
Firefox: Firefox provided a non-standard destructuring implementation from Firefox 2 to 40.Firefox for Android: Firefox for Android provided a non-standard destructuring implementation from Firefox for Android 4 to 40.
javascript.operators.destructuring.computed_property_names Edge8/2/2016 Safari9/20/201649
javascript.operators.destructuring.rest_in_arrays Safari3/21/2016 Edge10/17/2017575
javascript.operators.destructuring.rest_in_objects Safari4/12/2018 Edge1/15/2020643
javascript.operators.division 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.division_assignment 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.equality 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.exponentiation 📋Edge8/2/2016 Safari3/27/2017237
javascript.operators.exponentiation_assignment 📋Edge8/2/2016 Safari3/27/2017237
javascript.operators.function 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.function.trailing_comma Edge8/2/2016 Safari9/20/201649
javascript.operators.generator_function 📋Edge7/29/2015 Safari9/20/2016419
javascript.operators.generator_function.trailing_comma Safari9/20/2016 Edge1/15/20201212
javascript.operators.greater_than 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.greater_than_or_equal 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.grouping 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.import 📋Safari4/12/2018 Edge1/15/2020643
Deno: Bundled Deno applications (using deno compile) do not support dynamic importsNode.js: Dynamic import can be used in either CommonJS or ES module files, to import either CommonJS or ES module files. See Node's ECMAScript Modules documentation for more details.Node.js: Dynamic import can be used in either CommonJS or ES module files, to import either CommonJS or ES module files. See Node's ECMAScript Modules documentation for more details.
javascript.operators.import.options_parameter 📋Edge5/27/2021 Safari9/20/2021116
Node.js: The second parameter no longer throws a parser error, but the --experimental-json-modules flag is still needed to load JSON modules.
javascript.operators.import.worker_support Edge2/7/2020 Safari9/20/2021591
javascript.operators.import_meta 📋Safari4/12/2018 Edge1/15/2020643
javascript.operators.import_meta.resolve 📋Edge9/1/2022 Safari3/27/2023207
Node.js: Returns a URL object instead of a string.
javascript.operators.in 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.increment 📋Safari6/8/2009 Edge7/29/20152242
javascript.operators.inequality 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.instanceof 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.left_shift 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.left_shift_assignment 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.less_than 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.less_than_or_equal 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.logical_and 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.logical_and_assignment 📋Edge8/27/2020 Safari9/16/202020
javascript.operators.logical_not 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.logical_or 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.logical_or_assignment 📋Edge8/27/2020 Safari9/16/202020
javascript.operators.multiplication 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.multiplication_assignment 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.new 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.new_target 📋Edge11/12/2015 Safari9/19/2017677
javascript.operators.null 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.nullish_coalescing 📋Edge2/7/2020 Safari3/24/202046
javascript.operators.nullish_coalescing_assignment 📋Edge8/27/2020 Safari9/16/202020
javascript.operators.object_initializer 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.object_initializer.computed_property_names Safari10/16/2014 Edge7/29/2015286
javascript.operators.object_initializer.shorthand_method_names Edge7/29/2015 Safari9/30/201563
javascript.operators.object_initializer.shorthand_property_names Edge7/29/2015 Safari9/30/201563
javascript.operators.object_initializer.spread_properties Safari4/12/2018 Edge1/15/2020643
javascript.operators.optional_chaining 📋Edge2/7/2020 Safari3/24/202046
javascript.operators.property_accessors 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.remainder 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.remainder_assignment 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.right_shift 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.right_shift_assignment 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.spread 📋Safari10/16/2014 Edge7/29/2015286
javascript.operators.spread.spread_in_arrays 📋Safari10/16/2014 Edge7/29/2015286
javascript.operators.spread.spread_in_function_calls 📋Safari10/16/2014 Edge7/29/2015286
javascript.operators.spread.spread_in_object_literals 📋Safari4/12/2018 Edge1/15/2020643
javascript.operators.strict_equality 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.strict_inequality 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.subtraction 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.subtraction_assignment 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.super 📋Safari10/22/2013 Edge11/12/2015751
javascript.operators.this 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.typeof 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.unary_negation 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.unary_plus 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.unsigned_right_shift 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.unsigned_right_shift_assignment 📋Safari6/23/2003 Edge7/29/20154419
javascript.operators.void 📋Safari3/18/2008 Edge7/29/20152689
javascript.operators.yield 📋Edge7/29/2015 Safari9/20/2016419
Firefox: Starting with Firefox 33, the parsing of the yield expression has been updated to conform with the ES2015 specification.Firefox: Starting with Firefox 29, an IteratorResult object returned for completed generator function.Firefox for Android: Starting with Firefox for Android 33, the parsing of the yield expression has been updated to conform with the ES2015 specification.Firefox for Android: Starting with Firefox for Android 29, an IteratorResult object returned for completed generator function.
javascript.operators.yield_star 📋Edge7/29/2015 Safari9/20/2016419
Firefox: Starting with Firefox 33, the parsing of the yield expression has been updated to conform with the ES2015 specification.Firefox for Android: Starting with Firefox for Android 33, the parsing of the yield expression has been updated to conform with the ES2015 specification.
javascript.regular_expressions.backreference 📋Safari6/23/2003 Edge7/29/20154419
javascript.regular_expressions.capturing_group 📋Safari6/23/2003 Edge7/29/20154419
javascript.regular_expressions.character_class 📋Safari6/23/2003 Edge7/29/20154419
javascript.regular_expressions.character_class_escape 📋Safari6/23/2003 Edge7/29/20154419
javascript.regular_expressions.character_escape 📋Safari6/23/2003 Edge7/29/20154419
javascript.regular_expressions.character_escape.unicode Edge7/29/2015 Safari9/20/2016419
javascript.regular_expressions.disjunction 📋Safari6/23/2003 Edge7/29/20154419
javascript.regular_expressions.input_boundary_assertion 📋Safari6/23/2003 Edge7/29/20154419
javascript.regular_expressions.literal_character 📋Safari6/23/2003 Edge7/29/20154419
javascript.regular_expressions.lookahead_assertion 📋Safari6/23/2003 Edge7/29/20154419
javascript.regular_expressions.lookbehind_assertion 📋Edge1/15/2020 Safari3/27/20231167
javascript.regular_expressions.modifier 📋Edge5/17/2024 Safari9/15/2025486
javascript.regular_expressions.named_backreference 📋Safari4/12/2018 Edge1/15/2020643
javascript.regular_expressions.named_capturing_group 📋Safari4/12/2018 Edge1/15/2020643
javascript.regular_expressions.named_capturing_group.duplicate_named_capturing_groups Safari9/18/2023 Edge5/17/2024242
javascript.regular_expressions.non_capturing_group 📋Safari6/23/2003 Edge7/29/20154419
javascript.regular_expressions.quantifier 📋Safari6/23/2003 Edge7/29/20154419
javascript.regular_expressions.unicode_character_class_escape 📋Safari4/12/2018 Edge1/15/2020643
javascript.regular_expressions.wildcard 📋Safari6/23/2003 Edge7/29/20154419
javascript.regular_expressions.word_boundary_assertion 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.async_function 📋Safari3/27/2017 Edge4/5/20179
javascript.statements.async_generator_function 📋Safari9/17/2018 Edge1/15/2020485
javascript.statements.block 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.break 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.class 📋Edge11/12/2015 Safari3/27/2017501
Chrome: Strict mode is required.Chrome Android: Strict mode is required.Opera: Strict mode is required.Opera Android: Strict mode is required.Samsung Internet: Strict mode is required.WebView Android: Strict mode is required.
javascript.statements.const 📋Safari7/20/2011 Edge7/29/20151470
Firefox: Before Firefox 13, const is implemented, but re-assignment is not failing.Firefox: Before Firefox 46, a TypeError was thrown on redeclaration instead of a SyntaxError.Firefox for Android: Before Firefox for Android 14, const is implemented, but re-assignment is not failing.Firefox for Android: Before Firefox for Android 46, a TypeError was thrown on redeclaration instead of a SyntaxError.
javascript.statements.continue 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.debugger 📋Safari6/7/2010 Edge7/29/20151878
javascript.statements.do_while 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.empty 📋Safari6/7/2010 Edge7/29/20151878
javascript.statements.export 📋Safari3/27/2017 Edge10/17/2017204
Node.js: Modules must either have a filename ending in .mjs, or the nearest parent package.json file must contain "type": "module". See Node's ECMAScript Modules documentation for more details.
javascript.statements.export.arbitrary_module_namespace_identifier_names Edge1/21/2021 Safari4/26/202195
javascript.statements.export.default 📋Safari3/27/2017 Edge10/17/2017204
Node.js: Modules must either have a filename ending in .mjs, or the nearest parent package.json file must contain "type": "module". See Node's ECMAScript Modules documentation for more details.
javascript.statements.export.namespace 📋Edge1/15/2020 Safari4/26/2021467
Node.js: Modules must either have a filename ending in .mjs, or the nearest parent package.json file must contain "type": "module". See Node's ECMAScript Modules documentation for more details.
javascript.statements.for 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.for_await_of 📋Safari9/17/2018 Edge1/15/2020485
javascript.statements.for_in 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.for_of 📋Safari10/22/2013 Edge7/29/2015645
Firefox: Before Firefox 51, using the for...of loop construct with the const keyword threw a SyntaxError ("missing = in const declaration").Firefox for Android: Before Firefox for Android 51, using the for...of loop construct with the const keyword threw a SyntaxError ("missing = in const declaration").
javascript.statements.for_of.async_iterators Safari10/22/2013 Edge7/29/2015645
javascript.statements.for_of.closing_iterators Safari10/22/2013 Edge8/2/20161015
javascript.statements.function 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.function.trailing_comma_in_parameters Edge8/2/2016 Safari9/20/201649
javascript.statements.generator_function 📋Edge11/12/2015 Safari9/20/2016313
javascript.statements.generator_function.IteratorResult_object Edge11/12/2015 Safari9/20/2016313
javascript.statements.generator_function.not_constructable_with_new Edge11/12/2015 Safari9/20/2016313
javascript.statements.generator_function.trailing_comma_in_parameters Edge8/2/2016 Safari9/20/201649
javascript.statements.if_else 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.import 📋Safari3/27/2017 Edge10/17/2017204
Node.js: Modules must either have a filename ending in .mjs, or the nearest parent package.json file must contain "type": "module". See Node's ECMAScript Modules documentation for more details.Node.js: Modules must either have a filename ending in .mjs, or the nearest parent package.json file must contain "type": "module". See Node's ECMAScript Modules documentation for more details.
javascript.statements.import.arbitrary_module_namespace_identifier_names Edge1/21/2021 Safari4/26/202195
javascript.statements.import.import_attributes 📋Safari12/11/2023 Edge3/22/2024102
javascript.statements.import.import_attributes.type_json Safari12/11/2023 Edge3/22/2024102
javascript.statements.import.service_worker_support Edge5/27/2021 Safari9/20/2021116
javascript.statements.import.worker_support Edge2/7/2020 Safari9/20/2021591
javascript.statements.label 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.let 📋Edge8/2/2016 Safari9/20/201649
Chrome: Strict mode is required.Chrome Android: Strict mode is required.Edge: In Edge 12 and 13, let within a for loop initializer does not create a separate variable for each loop iteration as defined by ES2015. Instead, it behaves as though the loop were wrapped in a scoping block with the let immediately before the loop.Firefox: Before Firefox 44, let is only available to code blocks in HTML wrapped in a <script type="application/javascript;version=1.7"> block (or higher version) and has different semantics (e.g. no temporal dead zone).Firefox: Before Firefox 46, a TypeError is thrown on redeclaration instead of a SyntaxError.Firefox: Firefox 54 adds support of let in workers.Firefox for Android: Before Firefox for Android 44, let is only available to code blocks in HTML wrapped in a <script type="application/javascript;version=1.7"> block (or higher version) and has different semantics (e.g. no temporal dead zone).Firefox for Android: Before Firefox for Android 46, a TypeError is thrown on redeclaration instead of a SyntaxError.Firefox for Android: Firefox for Android 54 adds support of let in workers.Internet Explorer: In Internet Explorer, let within a for loop initializer does not create a separate variable for each loop iteration as defined by ES2015. Instead, it behaves as though the loop were wrapped in a scoping block with the let immediately before the loop.Samsung Internet: Strict mode is required.WebView Android: Strict mode is required.
javascript.statements.return 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.switch 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.throw 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.try_catch 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.try_catch.optional_catch_binding Safari4/12/2018 Edge1/15/2020643
javascript.statements.var 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.while 📋Safari6/23/2003 Edge7/29/20154419
javascript.statements.with 📋Safari6/23/2003 Edge7/29/20154419