542:. Wilson cautioned that because the proposed changes to ECMAScript made it backwards incompatible in some respects to earlier versions of the language, the update amounted to "breaking the Web", and that stakeholders who opposed the changes were being "hidden from view". Eich responded by stating that Wilson seemed to be "repeating falsehoods in blogs" and denied that there was attempt to suppress dissent and challenged critics to give specific examples of incompatibility. He pointed out that
432:) would have been the first major update to ECMAScript since the third edition was published in 1999. The specification (along with a reference implementation) was originally targeted for completion by October 2008. The first draft was dated February 1999. An overview of the language was released by the working group on 23 October 2007.
1220:, allowing the keyword to be used at the top level of modules; new class elements: public and private instance fields, public and private static fields, private instance methods and accessors, and private static methods and accessors; static blocks inside classes, to perform per-class evaluation initialization; the
575:
announced that Ecma TC39 would focus work on the ECMAScript 3.1 (later renamed to ECMAScript, 5th
Edition) project with full collaboration of all parties, and vendors would target at least two interoperable implementations by early 2009. In April 2009, Ecma TC39 published the "final" draft of the 5th
570:
However, the differing philosophies in each team resulted in repeated breakages of the subset rule, and it remained doubtful that the ECMAScript 4 dissenters would ever support or implement ECMAScript 4 in the future. After over a year since the disagreement over the future of ECMAScript within the
566:
Yahoo, Microsoft, Google, and other 4th edition dissenters formed their own subcommittee to design a less ambitious update of ECMAScript 3, tentatively named ECMAScript 3.1. This edition would focus on security and library updates, with a large emphasis on compatibility. After the aforementioned
517:
Work started on
Edition 4 after the ES-CP (Compact Profile) specification was completed, and continued for approximately 18 months where slow progress was made balancing the theory of Netscape's JavaScript 2 specification with the implementation experience of Microsoft's JScript .NET. After some
154:
Adds "strict mode", a subset intended to provide more thorough error checking and avoid error-prone constructs. Clarifies many ambiguities in the 3rd edition specification, and accommodates behavior of real-world implementations that differed consistently from that specification. Adds some new
567:
public sparring, the ECMAScript 3.1 and ECMAScript 4 teams agreed on a compromise: the two editions would be worked on, in parallel, with coordination between the teams to ensure that ECMAScript 3.1 remains a strict subset of ECMAScript 4 in both semantics and syntax.
138:
Fourth
Edition was abandoned, due to political differences concerning language complexity. Many features proposed for the Fourth Edition have been completely dropped; some were incorporated into the sixth edition.
2980:
527:
2488:
2463:
1674:
that are not part of a ratified specification. The language committee follows a "living spec" model, so these changes are part of the standard, and ratification is a formality.
1670:
ES.Next is a dynamic name that refers to whatever the next version is at the time of writing. ES.Next features include finished proposals (aka "stage 4 proposals") as listed at
2555:
416:(E4X). Ecma also defined a "Compact Profile" for ECMAScript โ known as ES-CP, or ECMA 327 โ that was designed for resource-constrained devices, which was withdrawn in 2015.
621:) and later renamed to ECMAScript 2015, was finalized in June 2015. This update adds significant new syntax for writing complex applications, including class declarations (
576:
edition and announced that testing of interoperable implementations was expected to be completed by mid-July. On
December 3, 2009, ECMA-262 5th edition was published.
116:, better string handling, new control statements, try/catch exception handling, tighter definition of errors, formatting for numeric output, and other enhancements
2338:
2613:
495:
2954:
2576:
2137:
2898:
2299:
1747:
1712:
2363:
1198:, to manage registration and unregistration of cleanup operations performed when target objects are garbage collected; separators for numeric literals (
1305:
comments at the beginning of files to better facilitate executable ECMAScript files; and allowed the use of most
Symbols as keys in weak collections.
2877:
1726:
1691:
2671:
2163:
3097:
3030:
3020:
3010:
3000:
2438:
2484:
1144:
Optional chaining makes it possible to access the nested properties of an object without having an AND check at each level. An example is
2794:
2388:
2459:
510:
In addition to introducing new features, some ES3 bugs were proposed to be fixed in edition 4. These fixes and others, and support for
2268:
1006:
flattens an array to a specified depth, meaning that all subarray elements (up to the specified depth) are concatenated recursively.
2413:
1972:
2547:
2513:
1521:
provides a simple way to get a promise's resolve and reject functions directly without having to assign them in the constructor.
2970:
2942:
2193:
1870:
810:
The 9th edition, or ECMAScript 2018, was finalized in June 2018. New features include the spread operator and rest parameters (
2247:
2964:
2936:
2214:
3080:
3070:
3060:
3050:
3040:
2700:
2990:
2930:
1023:
The 11th edition, or ECMAScript 2020, was published in June 2020. In addition to new functions, this version introduces a
1765:
672:, but defines them semantically in the same terms as ECMAScript 5 strict mode. Other new features include iterators and
2069:
2038:
2004:
1938:
724:. The complete list is extensive. As the first "ECMAScript Harmony" specification, it is also known as "ES6 Harmony".
1904:
1836:
1802:
1046:, where "n" is placed after the number literal. BigInts allow the representation and manipulation of integers beyond
3092:
3087:
2924:
2126:
1002:, meaning that elements with equal sorting keys will not change relative order before and after the sort operation.
2663:
2334:
470:
2664:"Standard ECMA-262 6th Edition / June 2015 ECMAScript 2015 Language Specification 14.2 Arrow Function Definitions"
2605:
976:
The 10th edition, or ECMAScript 2019, was published in June 2019. Added features include, but are not limited to,
2584:
2134:
2875:
As implemented in
Netscape Navigator 2.0 before submitting the first version for standardization as Ecmascript:
2310:
1032:
2110:
551:
2359:
734:
The 7th edition, or ECMAScript 2016, was finalized in June 2016. Its features include exponentiation operator
708:
keyword for constant local declarations, binary data, typed arrays, new collections (maps, sets and WeakMap),
480:
685:
522:(E4X) standard. The update has not been without controversy. In late 2007, a debate between Eich, later the
412:
In June 2004, Ecma
International published ECMA-357 standard, defining an extension to ECMAScript, known as
712:, number and math enhancements, reflection, proxies (metaprogramming for virtual objects and wrappers) and
499:, and to allow sacrificing some of the script's ability to be dynamic to improve performance. For example,
443:
2155:
1206:
was made more precise, reducing the number of cases that result in an implementation-defined sort order.
2843:
2434:
2642:
713:
1671:
1028:
504:
435:
By August 2008, the ECMAScript 4th edition proposal had been scaled back into a project code named
3112:
1761:
1216:
The 13th edition, ECMAScript 2022, was published in June 2022. This version introduces top-level
999:
464:
164:
17:
2384:
1058:
are not compatible with BigInts; for example, exponentiation of BigInts must be done with the
543:
1662:
flag, but as it makes backwards-incompatible changes it had to be introduced as a new flag.
792:
constructions that use generators and promises, and additional features for concurrency and
2275:
1313:
The 15th edition, ECMAScript 2024, was published in June 2024. This version introduces the
1262:
The 14th edition, ECMAScript 2023, was published in June 2023. This version introduces the
1166:
The 12th edition, ECMAScript 2021, was published in June 2021. This version introduces the
709:
772:
The 8th edition, or ECMAScript 2017, was finalized in June 2017. Its features include the
8:
3117:
2721:
2460:"A Major Milestone in JavaScript Standardization โ JScript Blog โ Site Home โ MSDN Blogs"
2409:
486:
449:
2948:
2844:"ES.Next is the next edition of the ECMAScript Language Specification โ Tuto Javascript"
94:
Editorial changes to keep the specification fully aligned with ISO/IEC 16262:1998.
2779:
2752:
2095:
2064:
2033:
2000:
1968:
1934:
1900:
1866:
1832:
1798:
1225:
1178:, a new error type to represent multiple errors at once; logical assignment operators (
523:
519:
413:
113:
34:
2509:
1194:, for referring to a target object without preserving it from garbage collection, and
754:, but provides a simpler syntax similar to languages like Python, F#, Perl, and Ruby.
2960:
2892:
2104:
1964:
1930:
1741:
1706:
821:
The spread operator allows for the easy copying of object properties, as shown below.
558:
3 respectively, both of which are larger and more complex than ECMAScript
Edition 3.
535:
79:
1896:
1862:
1828:
1794:
514:
encoding/decoding, have been folded into the ECMAScript, 5th
Edition specification.
2243:
2185:
721:
2225:
1340:
methods groups an iterable using the return value of a provided callback function.
571:
Ecma
Technical Committee 39, the two teams reached a new compromise in July 2008:
503:โ the virtual machine for ActionScript, developed and open-sourced by Adobe โ has
2692:
2141:
2130:
1244:
method for Strings, Arrays, and TypedArrays, which allows relative indexing; and
793:
76:
First edition based on JavaScript 1.1 as implemented in Netscape Navigator 3.0.
2533:
1302:
456:
156:
119:
97:
1770:
183:
Changes to keep the specification fully aligned with ISO/IEC 16262:2011.
3106:
1174:, a promise combinator that short-circuits when an input value is fulfilled;
746:
keywords for asynchronous programming (as a preparation for ES2017), and the
500:
460:
3076:
3046:
3036:
3026:
2090:
2059:
2028:
1996:
762:
was hailed as an easier way to use promises and develop asynchronous code.
572:
555:
3066:
3056:
3016:
3006:
2996:
2986:
2976:
2912:
40:
ECMAScript 2024, the 15th and current version, was released in June 2024.
2123:
2819:
112:
Based on JavaScript 1.2 as implemented in Netscape Navigator 4.0. Added
1232:
flag, which provides start and end indices for matched substrings; the
30:
1240:
objects, which can be used to record a causation chain in errors; the
547:
531:
599:
to return a single character from a given position in a string, and
1051:
474:
3045:
12th edition, June 2021 (ECMAScript 2021 Language Specification):
3035:
11th edition, June 2020 (ECMAScript 2020 Language Specification):
3025:
10th edition, June 2019 (ECMAScript 2019 Language Specification):
2606:"ECMAScript 6 (ES6): What's New In The Next Version Of JavaScript"
3075:
15th edition, June 2024 (ECMAScript 2024 Language specification):
3065:
14th edition, June 2023 (ECMAScript 2023 Language specification):
3055:
13th edition, June 2022 (ECMAScript 2022 Language specification):
3015:
9th edition, June 2018 (ECMAScript 2018 Language Specification):
3005:
8th edition, June 2017 (ECMAScript 2017 Language Specification):
2995:
7th Edition, June 2016 (ECMAScript 2016 Language Specification):
2985:
6th Edition, June 2015 (ECMAScript 2015 Language Specification):
1658:
flag in regular expressions is simply an improved version of the
1073:, returns its right-hand side operand when its left-hand side is
2820:"RegExp v flag with set notation and properties of strings ยท V8"
2774:
2747:
2360:"What I think about ES4. โ Albatross! โ Site Home โ MSDN Blogs"
439:. Features under discussion for Harmony at the time included:
2577:"5 Great Features in EcmaScript 6 (ES6 Harmony) โ Wintellect"
1050:, while Numbers are represented by a double-precision 64-bit
605:
var example = { "property1":"value1", "property2":"value2", }
37:. Since 2015, major versions have been published every June.
3098:
ECMA-357 ECMAScript for XML (E4X) Specification (June 2004)
3093:
ECMA-327 ECMAScript 3rd Edition Compact Profile (June 2001)
2634:
2485:"Ecma International finalises major revision of ECMAScript"
2335:"ECMAScript 3 and Beyond โ IEBlog โ Site Home โ MSDN Blogs"
1224:
syntax, to test for presence of private fields on objects;
580:
539:
511:
326:
Jordan Harband, Shu-yu Guo, Michael Ficarra, Kevin Gibbons
160:
493:
The intent of these features was partly to better support
3088:
ECMA-290 ECMAScript Components Specification (June 1999)
750:
function. The exponentiation operator is equivalent to
603:. A comma after the final pair of values in an object (
2635:"ECMAScript 6: New Features: Overview and Comparison"
2215:"Proposed ECMAScript 4th Edition โ Language Overview"
1692:"DevEdge Online โ Online JavaScript Reference Manual"
587:
to easily remove whitespaces surrounding a string (
381:
361:
341:
321:
301:
281:
261:
241:
221:
201:
1308:
1257:
1211:
1161:
1027:primitive type for arbitrary-sized integers, the
1018:
971:
3104:
2897:: CS1 maint: bot: original URL status unknown (
1746:: CS1 maint: bot: original URL status unknown (
1711:: CS1 maint: bot: original URL status unknown (
805:
767:
729:
612:
561:
2117:
1089:for all "falsy" values, such as the ones below.
814:) for object literals, asynchronous iteration,
2693:"ECMAScript 2017 (ES8): the final feature set"
688:-style generators, arrow function expression (
507:(JIT) support for certain classes of scripts.
286:Brian Terlson, Bradley Farias, Jordan Harband
1771:"Changes to JavaScript, Part 1: EcmaScript 5"
1513:// { "2024": , "2023": }
2795:"Promise.withResolvers() - JavaScript | MDN"
2269:"Compatibility Between ES3 and Proposed ES4"
1148:. If any of the properties are not present,
784:functions for easy manipulation of Objects,
386:Shu-yu Guo, Michael Ficarra, Kevin Gibbons
366:Shu-yu Guo, Michael Ficarra, Kevin Gibbons
346:Shu-yu Guo, Michael Ficarra, Kevin Gibbons
2925:ECMA-262 ECMAScript Language Specification
2880:. Archived from the original on 1997-06-13
1729:. Archived from the original on 1999-04-20
1694:. Archived from the original on 1997-06-14
419:
2548:"It's official: ECMAScript 6 is approved"
2023:
2021:
1991:
1989:
1009:Another notable change is that so-called
424:The proposed fourth edition of ECMA-262 (
2775:"ECMAScript 2024 Language Specification"
2748:"ECMAScript 2023 Language Specification"
2244:"John Resig โ Bug Fixes in JavaScript 2"
2091:"ECMAScript 2024 Language Specification"
2060:"ECMAScript 2023 Language Specification"
2029:"ECMAScript 2022 Language Specification"
1997:"ECMAScript 2021 Language Specification"
1965:"ECMAScript 2020 Language Specification"
1959:
1957:
1955:
1931:"ECMAScript 2019 Language Specification"
1925:
1923:
1921:
1897:"ECMAScript 2018 Language Specification"
1891:
1889:
1887:
1863:"ECMAScript 2017 Language Specification"
1857:
1855:
1853:
1829:"ECMAScript 2016 Language Specification"
1823:
1821:
1819:
1795:"ECMAScript 2015 Language Specification"
1789:
1787:
1146:const zipcode = person?.address?.zipcode
607:) also no longer causes a syntax error.
400:Pending, see features being considered:
2183:
14:
3105:
2685:
2241:
2153:
2018:
1986:
1329:unicode flag for regular expressions.
33:is a JavaScript standard developed by
1952:
1918:
1884:
1850:
1816:
1784:
2437:. Mail.mozilla.org. 13 August 2008.
2186:"The Real Story Behind ECMAScript 4"
1038:BigInts are created either with the
2300:"ECMAScript Language Specification"
186:Pratap Lakshman, Allen Wirfs-Brock
170:Pratap Lakshman, Allen Wirfs-Brock
24:
2487:. Ecma International. 2009-04-09.
25:
3129:
2918:
2869:
2864:
2545:
2224:. 23 October 2007. Archived from
2184:Peyrott, Sebastian (2021-03-04).
1069:The nullish coalescing operator,
1054:value. The built-in functions in
720:) for multi-line strings without
27:Versions of a JavaScript standard
2906:
2722:"ES2019: optional catch binding"
2274:. Ecmascript.org. Archived from
782:Object.getOwnPropertyDescriptors
704:keyword for local declarations,
2836:
2812:
2787:
2767:
2740:
2714:
2703:from the original on 2018-04-23
2674:from the original on 2022-02-14
2656:
2645:from the original on 2018-03-18
2627:
2616:from the original on 2017-11-24
2598:
2569:
2558:from the original on 2018-03-23
2539:
2527:
2516:from the original on 2020-04-16
2502:
2491:from the original on 2011-09-04
2477:
2466:from the original on 2010-03-23
2452:
2441:from the original on 2013-08-26
2427:
2416:from the original on 2014-02-10
2410:"JavaScript 2 and the Open Web"
2402:
2391:from the original on 2011-09-16
2377:
2366:from the original on 2010-01-27
2352:
2341:from the original on 2010-02-11
2327:
2292:
2261:
2250:from the original on 2013-11-02
2235:
2207:
2196:from the original on 2020-05-12
2177:
2166:from the original on 2013-11-02
2147:
2083:
2072:from the original on 2023-12-20
2052:
2041:from the original on 2023-12-24
2007:from the original on 2021-06-24
1975:from the original on 2021-01-18
1941:from the original on 2022-02-14
1907:from the original on 2022-02-14
1873:from the original on 2021-01-17
1839:from the original on 2022-02-14
1805:from the original on 2022-02-14
1250:Object.prototype.hasOwnProperty
1042:constructor or with the syntax
617:The 6th edition, ECMAScript 6 (
538:, became public on a number of
518:time, the focus shifted to the
382:#15th Edition โ ECMAScript 2024
362:#14th Edition โ ECMAScript 2023
342:#13th Edition โ ECMAScript 2022
322:#12th Edition โ ECMAScript 2021
302:#11th Edition โ ECMAScript 2020
282:#10th Edition โ ECMAScript 2019
2462:. Blogs.msdn.com. 2009-04-09.
2362:. Blogs.msdn.com. 2007-10-31.
2337:. Blogs.msdn.com. 2007-10-30.
1754:
1719:
1684:
1309:15th Edition โ ECMAScript 2024
1258:14th Edition โ ECMAScript 2023
1248:, a convenient alternative to
1212:13th Edition โ ECMAScript 2022
1162:12th Edition โ ECMAScript 2021
1019:11th Edition โ ECMAScript 2020
972:10th Edition โ ECMAScript 2019
262:#9th Edition โ ECMAScript 2018
242:#8th Edition โ ECMAScript 2017
222:#7th Edition โ ECMAScript 2016
202:#6th Edition โ ECMAScript 2015
155:features, such as getters and
13:
1:
2947:Edition 3 Final, March 2000:
2385:"Open letter to Chris Wilson"
2156:"ES4 overview paper released"
2154:Hansen, Lars T (2007-10-22).
1677:
1085:operator, which would return
1004:Array.prototype.flat(depth=1)
806:9th Edition โ ECMAScript 2018
768:8th Edition โ ECMAScript 2017
730:7th Edition โ ECMAScript 2016
613:6th Edition โ ECMAScript 2015
562:5th Edition โ ECMAScript 2009
2969:5th Edition, December 2009:
2941:3rd Edition, December 1999:
2878:"JavaScript Authoring Guide"
2583:. 2014-03-24. Archived from
2387:. Brendan Eich. 2007-10-31.
2309:. 2009-04-19. Archived from
401:
306:Jordan Harband, Kevin Smith
7:
2959:4th Edition (final draft):
1115:// -> "string"
1103:// -> "string"
1029:nullish coalescing operator
964:// -> {c: 3, a: 1, b: 2}
798:String.prototype.padStart()
436:
60:Changes from prior edition
43:
10:
3134:
2935:2nd Edition, August 1998:
2668:www.ecma-international.org
2512:. Ecma-international.org.
2109:: CS1 maint: url-status (
1665:
1081:. This contrasts with the
534:'s platform architect for
132:(last draft 30 June 2003)
1249:
1245:
1241:
1237:
1233:
1229:
1221:
1217:
1203:
1199:
1195:
1191:
1183:
1179:
1175:
1171:
1167:
1153:
1149:
1145:
1086:
1082:
1078:
1074:
1070:
1063:
1059:
1055:
1047:
1043:
1039:
995:
818:and additions to RegExp.
816:Promise.prototype.finally
781:
777:
773:
751:
747:
689:
673:
640:
622:
397:ECMAScript 2025 (ES2025)
377:ECMAScript 2024 (ES2024)
357:ECMAScript 2023 (ES2023)
337:ECMAScript 2022 (ES2022)
330:
317:ECMAScript 2021 (ES2021)
310:
297:ECMAScript 2020 (ES2020)
290:
277:ECMAScript 2019 (ES2019)
270:
257:ECMAScript 2018 (ES2018)
250:
237:ECMAScript 2017 (ES2017)
230:
217:ECMAScript 2016 (ES2016)
210:
197:ECMAScript 2015 (ES2015)
190:
174:
145:
125:
103:
85:
67:
62:
59:
56:
53:
50:
2975:5.1 Edition, June 2011:
2953:4th Edition (overview):
2929:1st Edition, June 1997:
2135:Ecma withdrawn Standards
2124:2015-03-24 Meeting Notes
1523:
1342:
1091:
998:is now guaranteed to be
823:
748:Array.prototype.includes
505:just-in-time compilation
496:programming in the large
481:destructuring assignment
1048:Number.MAX_SAFE_INTEGER
982:Array.prototype.flatMap
420:4th Edition (abandoned)
2133:. ESDiscuss. Also see
1727:"JavaScript Reference"
1228:match indices via the
465:structural type system
167:on object properties.
159:, library support for
2799:developer.mozilla.org
1773:. YouTube. 2009-05-18
1519:Promise.withResolvers
1323:Promise.withResolvers
544:Microsoft Silverlight
2510:"Ecma previous news"
2435:"ECMAScript Harmony"
2231:on 23 December 2010.
2162:. Mail.mozilla.org.
1298:; added support for
1288:TypedArray.prototype
1204:Array.prototype.sort
1196:FinalizationRegistry
1170:method for strings;
1062:operator instead of
978:Array.prototype.flat
639:), ES6 modules like
487:algebraic data types
163:, and more complete
2534:JavaScript Versions
796:. It also includes
463:, probably using a
135:ECMAScript 4 (ES4)
114:regular expressions
2913:ISO/IEC 22275:2018
2780:Ecma International
2753:Ecma International
2307:Ecma International
2140:2015-08-13 at the
2129:2017-06-23 at the
2096:Ecma International
2065:Ecma International
2034:Ecma International
2001:Ecma International
1969:Ecma International
1935:Ecma International
1901:Ecma International
1867:Ecma International
1833:Ecma International
1799:Ecma International
1672:finished proposals
1226:regular expression
1136:"string"
1124:"string"
1112:"string"
1100:"string"
1087:"string"
990:Object.fromEntries
579:Additions include
524:Mozilla Foundation
520:ECMAScript for XML
437:ECMAScript Harmony
414:ECMAScript for XML
206:Allen Wirfs-Brock
35:Ecma International
2848:gdevops.gitlab.io
2610:Smashing Magazine
1290:, as well as the
1033:globalThis object
1013:became optional.
722:escape characters
716:using backticks (
714:template literals
536:Internet Explorer
410:
409:
80:Guy L. Steele Jr.
16:(Redirected from
3125:
2902:
2896:
2888:
2886:
2885:
2858:
2857:
2855:
2854:
2840:
2834:
2833:
2831:
2830:
2816:
2810:
2809:
2807:
2806:
2791:
2785:
2784:
2771:
2765:
2764:
2762:
2761:
2744:
2738:
2737:
2735:
2733:
2718:
2712:
2711:
2709:
2708:
2689:
2683:
2682:
2680:
2679:
2660:
2654:
2653:
2651:
2650:
2639:es6-features.org
2631:
2625:
2624:
2622:
2621:
2602:
2596:
2595:
2593:
2592:
2573:
2567:
2566:
2564:
2563:
2543:
2537:
2531:
2525:
2524:
2522:
2521:
2506:
2500:
2499:
2497:
2496:
2481:
2475:
2474:
2472:
2471:
2456:
2450:
2449:
2447:
2446:
2431:
2425:
2424:
2422:
2421:
2406:
2400:
2399:
2397:
2396:
2381:
2375:
2374:
2372:
2371:
2356:
2350:
2349:
2347:
2346:
2331:
2325:
2324:
2322:
2321:
2315:
2304:
2296:
2290:
2289:
2287:
2286:
2280:
2273:
2265:
2259:
2258:
2256:
2255:
2239:
2233:
2232:
2230:
2219:
2211:
2205:
2204:
2202:
2201:
2181:
2175:
2174:
2172:
2171:
2151:
2145:
2121:
2115:
2114:
2108:
2100:
2087:
2081:
2080:
2078:
2077:
2056:
2050:
2049:
2047:
2046:
2025:
2016:
2015:
2013:
2012:
1993:
1984:
1983:
1981:
1980:
1961:
1950:
1949:
1947:
1946:
1927:
1916:
1915:
1913:
1912:
1893:
1882:
1881:
1879:
1878:
1859:
1848:
1847:
1845:
1844:
1825:
1814:
1813:
1811:
1810:
1791:
1782:
1781:
1779:
1778:
1758:
1752:
1751:
1745:
1737:
1735:
1734:
1723:
1717:
1716:
1710:
1702:
1700:
1699:
1688:
1661:
1657:
1650:
1647:
1644:
1641:
1638:
1635:
1632:
1629:
1626:
1623:
1620:
1617:
1614:
1611:
1608:
1605:
1602:
1599:
1596:
1593:
1590:
1587:
1584:
1581:
1578:
1575:
1572:
1569:
1566:
1563:
1560:
1557:
1554:
1551:
1548:
1545:
1542:
1539:
1536:
1533:
1530:
1527:
1520:
1514:
1511:
1508:
1505:
1502:
1499:
1496:
1493:
1490:
1487:
1484:
1481:
1478:
1475:
1472:
1469:
1466:
1463:
1460:
1457:
1454:
1451:
1448:
1445:
1442:
1439:
1436:
1433:
1430:
1427:
1424:
1423:"2024"
1421:
1418:
1415:
1412:
1409:
1406:
1403:
1400:
1397:
1396:"2023"
1394:
1391:
1388:
1385:
1382:
1379:
1376:
1373:
1370:
1369:"2024"
1367:
1364:
1361:
1358:
1355:
1352:
1349:
1346:
1339:
1335:
1328:
1324:
1321:static methods,
1320:
1316:
1301:
1297:
1293:
1289:
1285:
1281:
1277:
1273:
1269:
1265:
1251:
1247:
1243:
1239:
1235:
1231:
1223:
1219:
1205:
1201:
1197:
1193:
1189:
1185:
1181:
1177:
1173:
1169:
1155:
1151:
1147:
1140:
1137:
1134:
1131:
1128:
1125:
1122:
1119:
1116:
1113:
1110:
1107:
1104:
1101:
1098:
1095:
1088:
1084:
1080:
1076:
1072:
1065:
1061:
1057:
1049:
1045:
1041:
1026:
1005:
997:
991:
987:
983:
979:
965:
962:
959:
956:
953:
950:
947:
944:
941:
938:
935:
932:
929:
926:
923:
920:
917:
914:
911:
910:// ES2018 syntax
908:
905:
902:
899:
896:
893:
890:
889:// before ES2018
887:
884:
881:
878:
875:
872:
869:
866:
863:
860:
857:
854:
851:
848:
845:
842:
839:
836:
833:
830:
827:
817:
813:
799:
791:
787:
783:
779:
775:
761:
757:
753:
749:
745:
741:
737:
719:
707:
703:
699:
698:
695:
692:
683:
682:
679:
676:
671:
670:
667:
664:
661:
658:
655:
652:
649:
646:
643:
638:
637:
634:
631:
628:
625:
606:
602:
598:
594:
590:
586:
457:type annotations
48:
47:
21:
3133:
3132:
3128:
3127:
3126:
3124:
3123:
3122:
3103:
3102:
2921:
2909:
2890:
2889:
2883:
2881:
2876:
2872:
2867:
2862:
2861:
2852:
2850:
2842:
2841:
2837:
2828:
2826:
2818:
2817:
2813:
2804:
2802:
2793:
2792:
2788:
2773:
2772:
2768:
2759:
2757:
2746:
2745:
2741:
2731:
2729:
2720:
2719:
2715:
2706:
2704:
2691:
2690:
2686:
2677:
2675:
2662:
2661:
2657:
2648:
2646:
2633:
2632:
2628:
2619:
2617:
2604:
2603:
2599:
2590:
2588:
2575:
2574:
2570:
2561:
2559:
2544:
2540:
2532:
2528:
2519:
2517:
2508:
2507:
2503:
2494:
2492:
2483:
2482:
2478:
2469:
2467:
2458:
2457:
2453:
2444:
2442:
2433:
2432:
2428:
2419:
2417:
2408:
2407:
2403:
2394:
2392:
2383:
2382:
2378:
2369:
2367:
2358:
2357:
2353:
2344:
2342:
2333:
2332:
2328:
2319:
2317:
2313:
2302:
2298:
2297:
2293:
2284:
2282:
2278:
2271:
2267:
2266:
2262:
2253:
2251:
2240:
2236:
2228:
2217:
2213:
2212:
2208:
2199:
2197:
2182:
2178:
2169:
2167:
2152:
2148:
2142:Wayback Machine
2131:Wayback Machine
2122:
2118:
2102:
2101:
2089:
2088:
2084:
2075:
2073:
2058:
2057:
2053:
2044:
2042:
2027:
2026:
2019:
2010:
2008:
1995:
1994:
1987:
1978:
1976:
1963:
1962:
1953:
1944:
1942:
1929:
1928:
1919:
1910:
1908:
1895:
1894:
1885:
1876:
1874:
1861:
1860:
1851:
1842:
1840:
1827:
1826:
1817:
1808:
1806:
1793:
1792:
1785:
1776:
1774:
1769:
1766:Wayback Machine
1759:
1755:
1739:
1738:
1732:
1730:
1725:
1724:
1720:
1704:
1703:
1697:
1695:
1690:
1689:
1685:
1680:
1668:
1659:
1655:
1652:
1651:
1648:
1645:
1642:
1639:
1636:
1633:
1630:
1627:
1624:
1621:
1618:
1615:
1612:
1609:
1606:
1603:
1600:
1597:
1594:
1591:
1588:
1585:
1582:
1579:
1576:
1573:
1570:
1567:
1564:
1561:
1558:
1555:
1552:
1549:
1546:
1543:
1540:
1537:
1534:
1531:
1528:
1525:
1518:
1516:
1515:
1512:
1509:
1506:
1503:
1500:
1497:
1494:
1491:
1488:
1485:
1482:
1479:
1476:
1473:
1470:
1467:
1464:
1461:
1458:
1455:
1452:
1449:
1446:
1443:
1440:
1437:
1434:
1431:
1428:
1425:
1422:
1419:
1416:
1413:
1410:
1407:
1404:
1401:
1398:
1395:
1392:
1389:
1386:
1383:
1380:
1377:
1374:
1371:
1368:
1365:
1362:
1359:
1356:
1353:
1350:
1347:
1344:
1337:
1333:
1326:
1322:
1318:
1314:
1311:
1299:
1296:Array.prototype
1295:
1291:
1287:
1284:Array.prototype
1283:
1279:
1275:
1271:
1267:
1263:
1260:
1214:
1187:
1164:
1142:
1141:
1138:
1135:
1132:
1129:
1126:
1123:
1120:
1117:
1114:
1111:
1108:
1105:
1102:
1099:
1096:
1093:
1024:
1021:
1003:
989:
985:
981:
977:
974:
967:
966:
963:
960:
957:
954:
951:
948:
945:
942:
939:
936:
933:
930:
927:
924:
921:
918:
915:
912:
909:
906:
903:
900:
897:
894:
891:
888:
885:
882:
879:
876:
873:
870:
867:
864:
861:
858:
855:
852:
849:
846:
843:
840:
837:
834:
831:
828:
825:
815:
811:
808:
797:
789:
785:
770:
759:
755:
743:
739:
735:
732:
717:
705:
701:
696:
693:
690:
680:
677:
674:
668:
665:
662:
659:
657:"..."
656:
653:
650:
647:
644:
641:
635:
632:
629:
626:
623:
615:
604:
601:Array.isArray()
600:
597:String.charAt()
596:
592:
588:
584:
564:
450:a module system
422:
54:Date published
46:
28:
23:
22:
15:
12:
11:
5:
3131:
3121:
3120:
3115:
3113:Ecma standards
3101:
3100:
3095:
3090:
3085:
3084:
3083:
3073:
3063:
3053:
3043:
3033:
3023:
3013:
3003:
2993:
2983:
2973:
2967:
2957:
2951:
2945:
2939:
2933:
2920:
2919:ECMA standards
2917:
2916:
2915:
2908:
2905:
2904:
2903:
2871:
2870:JavaScript 1.0
2868:
2866:
2865:External links
2863:
2860:
2859:
2835:
2811:
2786:
2766:
2739:
2713:
2684:
2655:
2626:
2612:. 2015-10-28.
2597:
2568:
2538:
2536:from W3schools
2526:
2501:
2476:
2451:
2426:
2412:. 2007-11-20.
2401:
2376:
2351:
2326:
2291:
2260:
2234:
2222:ecmascript.org
2206:
2176:
2146:
2116:
2082:
2051:
2017:
1985:
1951:
1917:
1883:
1849:
1815:
1783:
1753:
1718:
1682:
1681:
1679:
1676:
1667:
1664:
1524:
1345:// sample data
1343:
1334:Object.groupBy
1315:Object.groupBy
1310:
1307:
1259:
1256:
1213:
1210:
1176:AggregateError
1163:
1160:
1127:// -> false
1092:
1020:
1017:
973:
970:
824:
807:
804:
778:Object.entries
769:
766:
731:
728:
614:
611:
563:
560:
491:
490:
484:
478:
468:
453:
447:
421:
418:
408:
407:
404:
398:
395:
392:
388:
387:
384:
378:
375:
372:
368:
367:
364:
358:
355:
352:
348:
347:
344:
338:
335:
332:
328:
327:
324:
318:
315:
312:
308:
307:
304:
298:
295:
292:
288:
287:
284:
278:
275:
272:
268:
267:
266:Brian Terlson
264:
258:
255:
252:
248:
247:
246:Brian Terlson
244:
238:
235:
232:
228:
227:
226:Brian Terlson
224:
218:
215:
212:
208:
207:
204:
198:
195:
192:
188:
187:
184:
181:
179:
176:
172:
171:
168:
152:
150:
149:December 2009
147:
143:
142:
140:
136:
133:
127:
123:
122:
120:Mike Cowlishaw
117:
110:
108:
107:December 1999
105:
101:
100:
98:Mike Cowlishaw
95:
92:
90:
87:
83:
82:
77:
74:
72:
69:
65:
64:
61:
58:
55:
52:
45:
42:
26:
9:
6:
4:
3:
2:
3130:
3119:
3116:
3114:
3111:
3110:
3108:
3099:
3096:
3094:
3091:
3089:
3086:
3082:
3078:
3074:
3072:
3068:
3064:
3062:
3058:
3054:
3052:
3048:
3044:
3042:
3038:
3034:
3032:
3028:
3024:
3022:
3018:
3014:
3012:
3008:
3004:
3002:
2998:
2994:
2992:
2988:
2984:
2982:
2978:
2974:
2972:
2968:
2966:
2962:
2958:
2956:
2952:
2950:
2946:
2944:
2940:
2938:
2934:
2932:
2928:
2927:
2926:
2923:
2922:
2914:
2911:
2910:
2907:ISO standards
2900:
2894:
2879:
2874:
2873:
2849:
2845:
2839:
2825:
2821:
2815:
2800:
2796:
2790:
2782:
2781:
2776:
2770:
2755:
2754:
2749:
2743:
2727:
2723:
2717:
2702:
2698:
2694:
2688:
2673:
2669:
2665:
2659:
2644:
2640:
2636:
2630:
2615:
2611:
2607:
2601:
2587:on 2017-07-22
2586:
2582:
2578:
2572:
2557:
2553:
2549:
2546:Krill, Paul.
2542:
2535:
2530:
2515:
2511:
2505:
2490:
2486:
2480:
2465:
2461:
2455:
2440:
2436:
2430:
2415:
2411:
2405:
2390:
2386:
2380:
2365:
2361:
2355:
2340:
2336:
2330:
2316:on 2009-04-19
2312:
2308:
2301:
2295:
2281:on 2014-07-24
2277:
2270:
2264:
2249:
2246:. Ejohn.org.
2245:
2238:
2227:
2223:
2216:
2210:
2195:
2191:
2187:
2180:
2165:
2161:
2157:
2150:
2143:
2139:
2136:
2132:
2128:
2125:
2120:
2112:
2106:
2098:
2097:
2092:
2086:
2071:
2068:. June 2023.
2067:
2066:
2061:
2055:
2040:
2037:. June 2022.
2036:
2035:
2030:
2024:
2022:
2006:
2003:. June 2021.
2002:
1998:
1992:
1990:
1974:
1971:. June 2020.
1970:
1966:
1960:
1958:
1956:
1940:
1937:. June 2019.
1936:
1932:
1926:
1924:
1922:
1906:
1903:. June 2018.
1902:
1898:
1892:
1890:
1888:
1872:
1869:. June 2017.
1868:
1864:
1858:
1856:
1854:
1838:
1835:. June 2016.
1834:
1830:
1824:
1822:
1820:
1804:
1801:. June 2015.
1800:
1796:
1790:
1788:
1772:
1767:
1763:
1757:
1749:
1743:
1728:
1722:
1714:
1708:
1693:
1687:
1683:
1675:
1673:
1663:
1646:withResolvers
1522:
1341:
1330:
1306:
1304:
1280:findLastIndex
1255:
1253:
1246:Object.hasOwn
1227:
1209:
1207:
1159:
1157:
1090:
1067:
1053:
1036:
1034:
1030:
1016:
1014:
1012:
1011:catch binding
1007:
1001:
993:
984:, changes to
969:
822:
819:
803:
801:
795:
774:Object.values
765:
763:
738:for numbers,
727:
725:
723:
715:
711:
687:
620:
610:
608:
589:" example "
585:String.trim()
582:
577:
574:
568:
559:
557:
553:
549:
545:
541:
537:
533:
529:
525:
521:
515:
513:
508:
506:
502:
498:
497:
488:
485:
482:
479:
476:
472:
469:
466:
462:
461:static typing
458:
454:
451:
448:
445:
442:
441:
440:
438:
433:
431:
427:
417:
415:
405:
403:
399:
396:
393:
390:
389:
385:
383:
379:
376:
373:
370:
369:
365:
363:
359:
356:
353:
350:
349:
345:
343:
339:
336:
333:
329:
325:
323:
319:
316:
313:
309:
305:
303:
299:
296:
293:
289:
285:
283:
279:
276:
273:
269:
265:
263:
259:
256:
253:
249:
245:
243:
239:
236:
233:
229:
225:
223:
219:
216:
213:
209:
205:
203:
199:
196:
193:
189:
185:
182:
180:
177:
173:
169:
166:
162:
158:
153:
151:
148:
144:
141:
137:
134:
131:
128:
124:
121:
118:
115:
111:
109:
106:
102:
99:
96:
93:
91:
88:
84:
81:
78:
75:
73:
70:
66:
49:
41:
38:
36:
32:
19:
2882:. Retrieved
2851:. Retrieved
2847:
2838:
2827:. Retrieved
2823:
2814:
2803:. Retrieved
2801:. 2023-11-23
2798:
2789:
2783:. June 2024.
2778:
2769:
2758:. Retrieved
2751:
2742:
2730:. Retrieved
2728:. 2017-08-13
2725:
2716:
2705:. Retrieved
2696:
2687:
2676:. Retrieved
2667:
2658:
2647:. Retrieved
2638:
2629:
2618:. Retrieved
2609:
2600:
2589:. Retrieved
2585:the original
2580:
2571:
2560:. Retrieved
2551:
2541:
2529:
2518:. Retrieved
2504:
2493:. Retrieved
2479:
2468:. Retrieved
2454:
2443:. Retrieved
2429:
2418:. Retrieved
2404:
2393:. Retrieved
2379:
2368:. Retrieved
2354:
2343:. Retrieved
2329:
2318:. Retrieved
2311:the original
2306:
2294:
2283:. Retrieved
2276:the original
2263:
2252:. Retrieved
2242:John Resig.
2237:
2226:the original
2221:
2209:
2198:. Retrieved
2189:
2179:
2168:. Retrieved
2159:
2149:
2119:
2099:. June 2024.
2094:
2085:
2074:. Retrieved
2063:
2054:
2043:. Retrieved
2032:
2009:. Retrieved
1977:. Retrieved
1943:. Retrieved
1909:. Retrieved
1875:. Retrieved
1841:. Retrieved
1807:. Retrieved
1775:. Retrieved
1762:Ghostarchive
1760:Archived at
1756:
1731:. Retrieved
1721:
1696:. Retrieved
1686:
1669:
1653:
1517:
1331:
1312:
1261:
1254:
1236:property on
1215:
1208:
1165:
1158:
1143:
1139:// -> NaN
1068:
1037:
1022:
1015:
1010:
1008:
994:
975:
968:
820:
809:
802:
771:
764:
733:
726:
618:
616:
609:
578:
573:Brendan Eich
569:
565:
556:ActionScript
528:Chris Wilson
526:'s CTO, and
516:
509:
494:
492:
434:
429:
426:ECMAScript 4
425:
423:
411:
129:
39:
29:
2756:. June 2023
2160:mozilla.org
1338:Map.groupBy
1319:Map.groupBy
1282:methods on
1184:&&=
1172:Promise.any
958:otherObject
916:otherObject
895:objectClone
865:objectClone
3118:JavaScript
3107:Categories
2884:2023-10-13
2853:2023-07-05
2829:2024-08-18
2805:2024-08-18
2760:2023-06-30
2726:2ality.com
2707:2018-04-23
2678:2021-06-28
2649:2018-03-19
2620:2018-03-19
2591:2018-03-19
2581:Wintellect
2562:2018-03-19
2520:2020-03-29
2495:2009-05-22
2470:2013-10-31
2445:2013-10-31
2420:2014-01-20
2395:2013-10-31
2370:2013-10-31
2345:2013-10-31
2320:2018-03-19
2285:2013-10-31
2254:2013-10-31
2200:2020-03-05
2170:2013-10-31
2076:2024-07-22
2045:2024-07-22
2011:2021-06-26
1979:2021-06-28
1945:2021-06-28
1911:2021-06-28
1877:2021-06-28
1843:2021-06-28
1809:2021-06-28
1777:2013-10-31
1733:2023-10-13
1698:2023-10-13
1678:References
1610:// ES 2024
1526:// ES 2023
1325:, and the
1294:method on
1268:toReversed
1168:replaceAll
1031:, and the
996:Array.sort
986:Array.sort
651:moduleName
471:generators
406:(pending)
394:(pending)
374:June 2024
354:June 2023
334:June 2022
314:June 2021
294:June 2020
274:June 2019
254:June 2018
234:June 2017
214:June 2016
194:June 2015
178:June 2011
165:reflection
89:June 1998
71:June 1997
31:ECMAScript
2552:InfoWorld
2190:auth0.com
1292:toSpliced
1222:#x in obj
1154:undefined
1094:undefined
1079:undefined
593:"example"
548:Adobe AIR
532:Microsoft
475:iterators
455:optional
130:Abandoned
2893:cite web
2732:26 April
2701:Archived
2672:Archived
2670:. 2015.
2643:Archived
2614:Archived
2556:Archived
2514:Archived
2489:Archived
2464:Archived
2439:Archived
2414:Archived
2389:Archived
2364:Archived
2339:Archived
2248:Archived
2194:Archived
2164:Archived
2138:Archived
2127:Archived
2105:cite web
2070:Archived
2039:Archived
2005:Archived
1973:Archived
1939:Archived
1905:Archived
1871:Archived
1837:Archived
1803:Archived
1764:and the
1742:cite web
1707:cite web
1276:findLast
1264:toSorted
1152:will be
1064:Math.pow
1052:IEEE 754
752:Math.pow
710:promises
550:rely on
402:#ES.Next
51:Edition
44:Versions
2144:. ECMA.
1666:ES.Next
1640:Promise
1631:promise
1619:resolve
1583:resolve
1559:Promise
1550:promise
1532:resolve
1495:console
1459:groupBy
1303:shebang
1202:); and
1192:WeakRef
1150:zipcode
946:console
794:atomics
684:loops,
501:Tamarin
444:classes
157:setters
63:Editor
2824:v8.dev
2697:2ality
1625:reject
1595:reject
1541:reject
1453:Object
1278:, and
1040:BigInt
1025:BigInt
1000:stable
988:, and
940:object
904:object
883:object
877:assign
871:Object
829:object
686:Python
663:export
642:import
18:ES2018
2314:(PDF)
2303:(PDF)
2279:(PDF)
2272:(PDF)
2229:(PDF)
2218:(PDF)
1613:const
1577:=>
1480:=>
1444:const
1348:const
1238:Error
1234:cause
1218:await
1200:1_000
1118:false
790:await
786:async
760:await
756:async
744:async
740:await
706:const
697:{...}
694:=>
666:const
624:class
540:blogs
483:, and
57:Name
3077:HTML
3067:HTML
3057:HTML
3047:HTML
3037:HTML
3027:HTML
3017:HTML
3007:HTML
2997:HTML
2987:HTML
2977:HTML
2961:HTML
2899:link
2734:2022
2111:link
1748:link
1713:link
1654:The
1489:year
1417:year
1390:year
1363:year
1336:and
1332:The
1317:and
1286:and
1272:with
1106:null
1075:null
1056:Math
901:{...
880:({},
780:and
654:from
581:JSON
554:and
546:and
512:JSON
473:and
459:and
380:See
360:See
340:See
320:See
300:See
280:See
260:See
240:See
220:See
200:See
175:5.1
161:JSON
3081:PDF
3071:PDF
3061:PDF
3051:PDF
3041:PDF
3031:PDF
3021:PDF
3011:PDF
3001:PDF
2991:PDF
2981:PDF
2971:PDF
2965:PDF
2955:PDF
2949:PDF
2943:PDF
2937:PDF
2931:PDF
1649:();
1607:});
1601:rej
1589:res
1571:rej
1565:res
1556:new
1547:let
1538:let
1529:let
1507:obj
1501:log
1465:arr
1447:obj
1351:arr
1190:);
1188:||=
1180:??=
1130:NaN
1077:or
1044:10n
952:log
937:...
913:let
892:let
862:let
826:let
812:...
702:let
700:),
678:...
675:for
669:Foo
633:...
627:Foo
619:ES6
595:),
591:to
430:ES4
428:or
391:16
371:15
351:14
331:13
311:12
291:11
271:10
3109::
3079:,
3069:,
3059:,
3049:,
3039:,
3029:,
3019:,
3009:,
2999:,
2989:,
2979:,
2963:,
2895:}}
2891:{{
2846:.
2822:.
2797:.
2777:.
2750:.
2724:.
2699:.
2695:.
2666:.
2641:.
2637:.
2608:.
2579:.
2554:.
2550:.
2305:.
2220:.
2192:.
2188:.
2158:.
2107:}}
2103:{{
2093:.
2062:.
2031:.
2020:^
1999:.
1988:^
1967:.
1954:^
1933:.
1920:^
1899:.
1886:^
1865:.
1852:^
1831:.
1818:^
1797:.
1786:^
1768::
1744:}}
1740:{{
1709:}}
1705:{{
1660:/u
1656:/v
1562:((
1510:);
1492:);
1483:el
1474:el
1441:];
1438:},
1429:id
1411:},
1402:id
1384:},
1375:id
1327:/v
1300:#!
1274:,
1270:,
1266:,
1252:.
1242:at
1230:/d
1186:,
1182:,
1156:.
1133:??
1121:??
1109:??
1097:??
1083:||
1071:??
1066:.
1060:**
1035:.
992:.
980:,
800:.
788:/
776:,
758:/
742:,
736:**
691:()
681:of
648:as
583:,
552:C#
530:,
251:9
231:8
211:7
191:6
146:5
126:4
104:3
86:2
68:1
2901:)
2887:.
2856:.
2832:.
2808:.
2763:.
2736:.
2710:.
2681:.
2652:.
2623:.
2594:.
2565:.
2523:.
2498:.
2473:.
2448:.
2423:.
2398:.
2373:.
2348:.
2323:.
2288:.
2257:.
2203:.
2173:.
2113:)
2079:.
2048:.
2014:.
1982:.
1948:.
1914:.
1880:.
1846:.
1812:.
1780:.
1750:)
1736:.
1715:)
1701:.
1643:.
1637:=
1634:}
1628:,
1622:,
1616:{
1604:;
1598:=
1592:;
1586:=
1580:{
1574:)
1568:,
1553:=
1544:;
1535:;
1504:(
1498:.
1486:.
1477:)
1471:(
1468:,
1462:(
1456:.
1450:=
1435:2
1432::
1426:,
1420::
1414:{
1408:1
1405::
1399:,
1393::
1387:{
1381:0
1378::
1372:,
1366::
1360:{
1357:[
1354:=
961:)
955:(
949:.
943:}
934:,
931:3
928::
925:c
922:{
919:=
907:}
898:=
886:)
874:.
868:=
859:}
856:2
853::
850:b
847:,
844:1
841::
838:a
835:{
832:=
718:`
660:;
645:*
636:}
630:{
489:.
477:,
467:,
452:,
446:,
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.