JavaScriptの追加機能メモ(ES2021(ES12))
久しぶりにJavaScriptでの開発を行うことになったので、過去のアップデートを拾ってみました。
ちなみに以下も記載しています。気になる方は目次だけでも眺めてみてください。
- JavaScriptの追加機能メモ(ES2020(ES11))
- JavaScriptの追加機能メモ(ES2019(ES10))
大きい数字を区切って人間が見やすくする
- 数値を_(アンスコ)をで区切って人間が見やすく記述することが可能。
- プログラムが処理される際に
_
があっても無視される。
- プログラムが処理される際に
const num = 1_000_000_000; // 1000000000と同じ
論理代入演算子
??=
演算子
a
がnull
かundefined
のときに、a
にb
を代入するための演算子。
let a = null; a ??= "update"; console.log(a); // 結果: "update" let b = "init"; b ??= "update"; console.log(b); // 結果: "init"
||=
演算子
a
がfalsy
なものの場合に、a
にb
を代入するための演算子。
let a = 0; a ||= "update"; console.log(a); // 結果: "update" let b = "init"; b ||= "update"; console.log(b); // 結果: "init"
&&=
演算子
a
がtruthy
なものの場合に、a
にb
を代入するための演算子。
let a = null; a &&= "update"; console.log(a); // 結果: "null" let b = "init"; b &&= "update"; console.log(b); // 結果: "update"
replaceAll()メソッドによる文字列の一括置換
- 文字列の一括置換が簡単にできるようになった。
const str = "私は北区に住んでいる北野です。" console.log(str.replaceAll("北", "東")) // 私は東区に住んでいる東野です。
その他
- Promise.any()で一番早くresolveした処理を採用
- 弱参照の追加