By default official react native typescript template and @tsconfig/react-native uses "lib": ["es2017"]
If you want to set newer level the next tables can help you identify an individual library component or to know what iOS version supports new functions/proposals
Note:
React Native on
Android
will use aJavaScriptCore
version from npmjsc-android
React Native on
iOS
will useJavaScriptCore
that provided by operating system. So, different iOS versions include a different JSC engine
es2020
Android (RN version) | 0.60.x | 0.61.x | 0.62.x | 0.63.x | 0.64.x | 0.65.x |
---|---|---|---|---|---|---|
BigInt (es2020.bigint) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
BigInt64Array (es2020.bigint) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
BigUint64Array (es2020.bigint) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Promise.allSettled() (es2020.promise) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
str.matchAll(/regex/g) (es2020.string) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Symbol.matchAll (es2020.symbol.wellknown) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
iOS version | 11.0 | 11.4 | 12.0 | 12.4 | 13.0 | 14.4 |
---|---|---|---|---|---|---|
BigInt (es2020.bigint) |
❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
BigInt64Array (es2020.bigint) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
BigUint64Array (es2020.bigint) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Promise.allSettled() (es2020.promise) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
str.matchAll(/regex/g) (es2020.string) |
❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
Symbol.matchAll (es2020.symbol.wellknown) |
❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
es2019
Android (RN version) | 0.60.x | 0.61.x | 0.62.x | 0.63.x | 0.64.x | 0.65.x |
---|---|---|---|---|---|---|
Array.prototype.flat (es2019.array) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Array.prototype.flatMap (es2019.array) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Object.fromEntries (es2019.object) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
String.prototype.trimEnd (es2019.string) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
String.prototype.trimStart (es2019.string) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
String.prototype.trimLeft (es2019.string) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
String.prototype.trimRight (es2019.string) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Symbol.prototype.description (es2019.symbol) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
iOS version | 11.0 | 11.4 | 12.0 | 12.4 | 13.0 | 14.4 |
---|---|---|---|---|---|---|
Array.prototype.flat (es2019.array) |
❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
Array.prototype.flatMap (es2019.array) |
❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
Object.fromEntries (es2019.object) |
❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
String.prototype.trimEnd (es2019.string) |
❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
String.prototype.trimStart (es2019.string) |
❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
String.prototype.trimLeft (es2019.string) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
String.prototype.trimRight (es2019.string) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Symbol.prototype.description (es2019.symbol) |
❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
es2018
Android (RN version) | 0.60.x | 0.61.x | 0.62.x | 0.63.x | 0.64.x | 0.65.x |
---|---|---|---|---|---|---|
async function* () { ... } (es2018.asyncgenerator) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
for await (let value of range) { ... } (es2018.asynciterable) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Symbol.asyncIterator (es2018.asynciterable) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Intl.PluralRules (es2018.intl) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
RegExp.dotAll (es2018.regexp) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Promise.prototype.finally (es2018.promise) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
iOS version | 11.0 | 11.4 | 12.0 | 12.4 | 13.0 | 14.4 |
---|---|---|---|---|---|---|
async function* () { ... } (es2018.asyncgenerator) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
for await (let value of range) { ... } (es2018.asynciterable) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Symbol.asyncIterator (es2018.asynciterable) |
❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
Intl.PluralRules (es2018.intl) |
❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
RegExp.dotAll (es2018.regexp) |
❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
Promise.prototype.finally (es2018.promise) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
es2017
Android (RN version) | 0.60.x | 0.61.x | 0.62.x | 0.63.x | 0.64.x | 0.65.x |
---|---|---|---|---|---|---|
SharedArrayBuffer (es2017.sharedmemory) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Atomics (es2017.typedarrays) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Uint8Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Uint8ClampedArray (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Int16Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Uint16Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Int32Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Uint32Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Float32Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Float64Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Int8Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Intl.DateTimeFormat.prototype.formatToParts(date) (es2017.intl) |
❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
Object.getOwnPropertyDescriptors(obj) (es2017.object) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Object.values(obj) (es2017.object) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Object.entries(obj) (es2017.object) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
String.prototype.padEnd (es2017.string) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
String.prototype.padStart (es2017.string) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
iOS version | 11.0 | 11.4 | 12.0 | 12.4 | 13.0 | 14.4 |
---|---|---|---|---|---|---|
SharedArrayBuffer (es2017.sharedmemory) |
✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
Atomics (es2017.typedarrays) |
✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
Uint8Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Uint8ClampedArray (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Int16Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Uint16Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Int32Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Uint32Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Float32Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Float64Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Int8Array (es2017.typedarrays) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Intl.DateTimeFormat.prototype.formatToParts(date) (es2017.intl) |
❌ | ❌ | ❌ | ❌ | ✅ | ❌ |
Object.getOwnPropertyDescriptors(obj) (es2017.object) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Object.values(obj) (es2017.object) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Object.entries(obj) (es2017.object) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
String.prototype.padEnd (es2017.string) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
String.prototype.padStart (es2017.string) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
es2016
Android (RN version) | 0.60.x | 0.61.x | 0.62.x | 0.63.x | 0.64.x | 0.65.x |
---|---|---|---|---|---|---|
Array.prototype.includes (es2016.array) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
iOS version | 11.0 | 11.4 | 12.0 | 12.4 | 13.0 | 14.4 |
---|---|---|---|---|---|---|
Array.prototype.includes (es2016.array) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
es2015
Android (RN version) | 0.60.x | 0.61.x | 0.62.x | 0.63.x | 0.64.x | 0.65.x |
---|---|---|---|---|---|---|
Symbol (es2015.symbol) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Reflect (es2015.reflect) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Proxy (es2015.proxy) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Promise (es2015.promise) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Map (es2015.collection) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Set (es2015.collection) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
function* (){ ... } (es2015.generator) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Symbol.iterator (es2015.iterable) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
iOS version | 11.0 | 11.4 | 12.0 | 12.4 | 13.0 | 14.4 |
---|---|---|---|---|---|---|
Symbol (es2015.symbol) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Reflect (es2015.reflect) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Proxy (es2015.proxy) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Promise (es2015.promise) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Map (es2015.collection) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Set (es2015.collection) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
function* (){ ... } (es2015.generator) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Symbol.iterator (es2015.iterable) |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Top comments (0)