Performance improvements and web assembly are not included.
V8 Blog, Chrome Roadmap, Repository
10.1, 10.6 |
9.0, 9.1, 9.2, 9.3, 9.4, 9.5, 9.6, 9.9, 9.9 |
8.0, 8.1, 8.4, 8.5, 8.6, 8.7, 8.8, 8.9 |
7.0, 7.1, 7.2, 7.3, 7.4, 7.5, 7.6, 7.9, 7.7, 7.8 |
6.0, 6.1, 6.2, 6.3, 6.4, 6.5, 6.6, 6.7, 6.8, 6.9 |
- Array.prototype.findLast
[{a:1, b:2},{a:1, b:3}].findLast(o => o.a === 1) // { a: 1, b: 3 }
|
- new properties added to Intl.Locale
- textInfo,
{ direction: 'rtl' }
- weekInfo,
{firstDay: 6, weekend: [5, 6], minimalDays: 1}
- calendars, collations, hourCycles, numberingSystems, timeZones
- array of preferred identifiers of those in common use
- textInfo,
- Intl.supportedValuesOf
- findLast and findLastIndex array methods
[1,2,3,4].findLast( el => el % 2 === 0) // 4
[1,2,3,4].findLastIndex( el => el % 2 === 0) // 3
- Intl.DisplayNames v2
- added: calendar, dateTimeField
- enhanced the support for the “language” type with a new languageDisplay option,
- Extended timeZoneName option
- Intl.DateTimeFormat API in v9.5 now supports four new values for the timeZoneName option:
- shortGeneric to output the name of the time zone as in a short generic non-location format, such as “PT”, “ET”, without indicating whether it is under daylight saving time.
- longGeneric to output the name of the time zone as in a short generic non-location format, such as Pacific Time, Mountain Time, without indicating whether it is under daylight saving time.
- shortOffset to output the name of the time zone as in the short localized GMT format, such as GMT-8.
- longOffset to output the name of the time zone as in the long localized GMT format, such as “GMT-0800”.
- Intl.DateTimeFormat API in v9.5 now supports four new values for the timeZoneName option:
- Class static initialization blocks
class C {
// This block will run when the class itself is evaluated
static { console.log("C's static block"); }
}
- at method is now available on Arrays, TypedArrays, and Strings.
[1,2,3].at(-1)
is 3- also available on FF 90
- top-level await enabled by default
- Private brand checks enabled by default. Extends the in operator to also work with private field #-names
- new experimental non-backtracking regular expression engine
- Atomics.waitAsync, Atomics explainer
- Unsafe Fast JS calls
- Open sourced JS-Fuzzer
- Speed-ups in Number.prototype.toString
- Atomics.wake renamed to Atomics.notify
- Anonymous classes now have a .name property whose value is the empty string ''
- The built-in Reflect object now has a Symbol.toStringTag property whose value is 'Reflect'
- Promise.any and AggregateError
- String.prototype.replaceAll
- Logical assignment operators
- Support for JS BigInts
- Intl.DisplayNames
- Promise.allSettled
- Intl.DateTimeFormat improvements
- formatRange
- formatRangeToParts
- Improved BigInt support
- toLocaleString
- Symbol.prototype.description
- Function.prototype.toString revision
- Optional catch binding
- One-sided string trimming
- Array.prototype.values
- dynamic module import via import()
- Promise.prototype.finally()
- async iterators/generators
- Intl.PluralRules
- More regular expressions features
- Template literal revision
- Increased max string length
- Object rest/spread properties
- SharedArrayBuffers