Skip to content
Permalink
main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time

Finished Proposals

Finished proposals are proposals that have reached stage 4, and are included in the latest draft of the specification.

Proposal Author Champion(s) TC39 meeting notes Expected Publication Year
Array.prototype.includes Domenic Denicola Domenic Denicola
Rick Waldron
November 2015 2016
Exponentiation operator Rick Waldron Rick Waldron January 2016 2016
Object.values/Object.entries Jordan Harband Jordan Harband March 2016 2017
String padding Jordan Harband Jordan Harband
Rick Waldron
May 2016 2017
Object.getOwnPropertyDescriptors Jordan Harband
Andrea Giammarchi
Jordan Harband
Andrea Giammarchi
May 2016 2017
Trailing commas in function parameter lists and calls Jeff Morrison Jeff Morrison July 2016 2017
Async functions Brian Terlson Brian Terlson July 2016 2017
Shared memory and atomics Lars T Hansen Lars T Hansen January 2017 2017
Lifting template literal restriction Tim Disney Tim Disney March 2017 2018
s (dotAll) flag for regular expressions Mathias Bynens Brian Terlson
Mathias Bynens
November 2017 2018
RegExp named capture groups Gorkem Yakin
Daniel Ehrenberg
Daniel Ehrenberg
Brian Terlson
Mathias Bynens
November 2017 2018
Rest/Spread Properties Sebastian Markbåge Sebastian Markbåge January 2018 2018
RegExp Lookbehind Assertions Gorkem Yakin
Nozomu Katō
Daniel Ehrenberg
Daniel Ehrenberg
Mathias Bynens
January 2018 2018
RegExp Unicode Property Escapes Mathias Bynens Brian Terlson
Daniel Ehrenberg
Mathias Bynens
January 2018 2018
Promise.prototype.finally Jordan Harband Jordan Harband January 2018 2018
Asynchronous Iteration Domenic Denicola Domenic Denicola January 2018 2018
Optional catch binding Michael Ficarra Michael Ficarra May 2018 2019
JSON superset Richard Gibson Mark Miller
Mathias Bynens
May 2018 2019
Symbol.prototype.description Michael Ficarra Michael Ficarra November 2018 2019
Function.prototype.toString revision Michael Ficarra Michael Ficarra November 2018 2019
Object.fromEntries Darien Maillet Valentine Jordan Harband
Kevin Gibbons
January 2019 2019
Well-formed JSON.stringify Richard Gibson Mathias Bynens January 2019 2019
String.prototype.{trimStart,trimEnd} Sebastian Markbåge Sebastian Markbåge
Mathias Bynens
January 2019 2019
Array.prototype.{flat,flatMap} Brian Terlson
Michael Ficarra
Mathias Bynens
Brian Terlson
Michael Ficarra
January 2019 2019
String.prototype.matchAll Jordan Harband Jordan Harband March 2019 2020
import() Domenic Denicola Domenic Denicola June 2019 2020
BigInt Daniel Ehrenberg Daniel Ehrenberg June 2019 2020
Promise.allSettled Jason Williams
Robert Pamely
Mathias Bynens
Mathias Bynens July 2019 2020
globalThis Jordan Harband Jordan Harband October 2019 2020
for-in mechanics Kevin Gibbons Kevin Gibbons December 2019 2020
Optional Chaining Gabriel Isenberg
Claude Pache
Dustin Savery
Gabriel Isenberg
Dustin Savery
Justin Ridgewell
Daniel Rosenwasser
December 2019 2020
Nullish coalescing Operator Gabriel Isenberg Gabriel Isenberg
Justin Ridgewell
Daniel Rosenwasser
December 2019 2020
import.meta Domenic Denicola Gus Caplan March 2020 2020
String.prototype.replaceAll Peter Marshall
Jakob Gruber
Mathias Bynens
Mathias Bynens June 2020 2021
Promise.any Mathias Bynens
Kevin Gibbons
Sergey Rubanov
Mathias Bynens July 2020 2021
WeakRefs Dean Tribble
Sathya Gunasekaran
Dean Tribble
Mark Miller
Till Schneidereit
Sathya Gunasekaran
Daniel Ehrenberg
July 2020 2021
Logical Assignment Operators Justin Ridgewell Justin Ridgewell
Hemanth HM
July 2020 2021
Numeric separators Sam Goto
Rick Waldron
Sam Goto
Rick Waldron
Leo Balter
July 2020 2021
Class Fields (Private instance methods and accessors, Class Public Instance Fields & Private Instance Fields, Static class fields and private static methods) Daniel Ehrenberg Daniel Ehrenberg
Kevin Gibbons
April 2021 2022
RegExp Match Indices Ron Buckton Ron Buckton May 2021 2022
Top-level await Myles Borins
Yulia Startsev
Daniel Ehrenberg
Guy Bedford
Ms2ger
Myles Borins
Yulia Startsev
May 2021 2022
Ergonomic brand checks for Private Fields Jordan Harband Jordan Harband July 2021 2022
.at() Shu-yu Guo
Tab Atkins
Shu-yu Guo
Tab Atkins
August 2021 2022
Accessible Object.prototype.hasOwnProperty Jamie Kyle Tierney Cyren
Jamie Kyle
August 2021 2022
Class Static Block Ron Buckton Ron Buckton August 2021 2022
Error Cause Chengzhong Wu Chengzhong Wu
Hemanth HM
October 2021 2022
Array find from last Wenlu Wang Wenlu Wang
Daniel Rosenwasser
June 2022 2023
Hashbang Grammar Bradley Farias Bradley Farias July 2022 2023

See also the active proposals, stage 1 proposals, stage 0 proposals, and inactive proposals documents.