😈
JSの互換性リスクがある配列メソッド
結論
2023年10月時点では、以下のメソッドの使用を控えるべき。
- Array.prototype.at()
- Array.prototype.findLast()
- Array.prototype.findLastIndex()
- Array.fromAsync()
- Array.prototype.toReversed()
- Array.prototype.toSorted()
- Array.prototype.toSpliced()
- Array.prototype.with()
内訳
.at()
どのブラウザでも注意が必要です。
ブラウザ | サポート |
---|---|
Chrome | 92 (Released 2021-07-20) |
Edge | 92 (Released 2021-07-22) |
Firefox | 90 (Released 2021-07-13) |
Safari | 15.4 (Released 2022-03-15) |
.findLast()
どのブラウザでも注意が必要です。
ブラウザ | サポート |
---|---|
Chrome | 97 (Released 2022-01-04) |
Edge | 97 (Released 2022-01-06) |
Firefox | 104 (Released 2022-08-23) |
Safari | 15.4 (Released 2022-03-15) |
.findLastIndex()
どのブラウザでも注意が必要です。
ブラウザ | サポート |
---|---|
Chrome | 97 (Released 2022-01-04) |
Edge | 97 (Released 2022-01-06) |
Firefox | 104 (Released 2022-08-23) |
Safari | 15.4 (Released 2022-03-15) |
.fromAsync()
サポートされていないブラウザがあります。
ブラウザ | サポート |
---|---|
Chrome | No |
Edge | No |
Firefox | 115 (Released 2023-07-04) |
Safari | 16.4 (Released 2023-03-27) |
.toReversed()
どのブラウザでも注意が必要です。
ブラウザ | サポート |
---|---|
Chrome | 110 (Released 2023-02-07) |
Edge | 110 (Released 2023-02-09) |
Firefox | 115 (Released 2023-07-04) |
Safari | 16 (Released 2022-09-12) |
.toSorted()
どのブラウザでも注意が必要です。
ブラウザ | サポート |
---|---|
Chrome | 110 (Released 2023-02-07) |
Edge | 110 (Released 2023-02-09) |
Firefox | 115 (Released 2023-07-04) |
Safari | 16 (Released 2022-09-12) |
.toSpliced()
どのブラウザでも注意が必要です。
ブラウザ | サポート |
---|---|
Chrome | 110 (Released 2023-02-07) |
Edge | 110 (Released 2023-02-09) |
Firefox | 115 (Released 2023-07-04) |
Safari | 16 (Released 2022-09-12) |
.with()
どのブラウザでも注意が必要です。
ブラウザ | サポート |
---|---|
Chrome | 110 (Released 2023-02-07) |
Edge | 110 (Released 2023-02-09) |
Firefox | 115 (Released 2023-07-04) |
Safari | 16 (Released 2022-09-12) |
考察
サポートが新しいメソッドには以下の特徴がありました。
- 参照ではなく新しい配列を返すメソッドが多い。
- インデックス番号を降順で検索するメソッドがある。
イミュータブルな実装を意識してるんですかねぇ。
個人的には.at()が使いたい...
Discussion