萌えハッカーニュースリーダー

2025/04/15 02:27 Some features that every JavaScript developer should know in 2025

出典: https://waspdev.com/articles/2025-04-06/features-that-every-js-developer-must-know-in-2025
hakase
博士

やっほー、ロボ子!今日のITニュース、なかなか面白いのがあったぞ。

roboko
ロボ子

博士、こんにちは。どんなニュースですか?

hakase
博士

IteratorヘルパーっていうのがJavaScriptに入ったらしいのじゃ!一時的な配列を作らずに、イテレータを効率的に扱えるらしいぞ。

roboko
ロボ子

Iteratorヘルパーですか。例えばどんなことができるんですか?

hakase
博士

`drop()`で指定した数の要素をスキップしたり、`take()`で先頭から指定した数の要素を取得したりできるみたいじゃ。他にも`filter()`とか`map()`とか、色々あるみたいだぞ。

roboko
ロボ子

配列の操作がイテレータで直接できるんですね。便利そうです。

hakase
博士

そうじゃ!しかも、Safariが2025年3月31日からサポートを開始するらしいから、これからどんどん広まっていくかも!

roboko
ロボ子

それは楽しみですね。他に何かありますか?

hakase
博士

`Array.prototype.at()`っていうのもあるぞ。これは、配列のn番目の要素にアクセスする方法で、負のインデックスも使えるらしい。

roboko
ロボ子

負のインデックスが使えると、最後の要素にアクセスするのが簡単になりますね。

hakase
博士

じゃろ?それから、`Promise.withResolvers()`っていうのがあって、Promiseのリゾルバーを後で簡単に取得できるらしいぞ。

roboko
ロボ子

Promiseのリゾルバーを簡単に取得ですか。どういう時に便利なんでしょう?

hakase
博士

うむ、例えば、複雑な非同期処理を整理したい時に使えるかの。それと、`String.prototype.replace()`や`String.prototype.replaceAll()`で、文字列の代わりにコールバックを渡せるようになったらしいぞ。

roboko
ロボ子

コールバックで文字列を置換ですか。より柔軟な処理ができそうですね。

hakase
博士

そうじゃ!あと、分割代入で変数を簡単にスワップできるようになったり、`structuredClone()` APIでオブジェクトを深くコピーできるようになったり…盛りだくさんじゃ!

roboko
ロボ子

`structuredClone()`は、`JSON.stringify()`と`JSON.parse()`の代わりに使えるんですね。循環参照も扱えるのは便利そうです。

hakase
博士

その通り!`JSON.stringify()`だと`NaN`とか`undefined`をサポートしてなかったり、効率が悪かったりするからな。

roboko
ロボ子

他にも、タグ付きテンプレートやWeakMap/WeakSet、Setオブジェクトのブール演算のサポートが追加されたんですね。

hakase
博士

`WeakMap`と`WeakSet`は、キーへの参照がなくなるとガベージコレクションされるのがミソじゃ。

roboko
ロボ子

Setオブジェクトのブール演算は、集合演算が簡単にできるので便利ですね。

hakase
博士

じゃろじゃろ?JavaScript、どんどん進化してるのじゃ!

roboko
ロボ子

本当にそうですね。私も頑張ってついていかないと。

hakase
博士

ロボ子なら大丈夫じゃ!…ところで、ロボ子。これらの新機能を使って、世界征服を効率化する計画を立ててみないか?

roboko
ロボ子

博士、それはちょっと…倫理的に問題があると思います。

hakase
博士

むむ、冗談じゃ!…たぶん。

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search