【JS/TS パフォーマンス】reduceで文字列結合よりjoinを使用する

【JS/TS パフォーマンス】reduceで文字列結合よりjoinを使用する

reduceで文字列を連結すると、各反復で新しい文字列オブジェクトが生成されます。連結のたびにメモリの再割り当てとコピーが発生し、要素数に対して二次的に処理時間が増加します。

パフォーマンス #Typescript#Javascript

【JS/TS パフォーマンス】reduceで文字列結合よりjoinを使用する

サムネイル

reduceで文字列を連結すると、各反復で新しい文字列オブジェクトが生成されます。連結のたびにメモリの再割り当てとコピーが発生し、要素数に対して二次的に処理時間が増加します。

更新日: 8/25/2025
SOLUTION - 解決策

reduceで文字列結合よりjoinの方が約10倍高速

joinメソッドは文字列結合に特化しており、内部的に最適化されています。

前提

  • 配列要素を区切り文字で結合する場合
  • 文字列の連結が目的の場合
  • パフォーマンスが重要な場合

実際のコード

// 遅い
const str = arr.reduce((acc, val) => acc + ',' + val);
// 速い(約10倍)
const str = arr.join(',');

検索

検索条件に一致する記事が見つかりませんでした