Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【JavaScript ECMAScript】TypedArray::TypedArray.prototype.reduceRightインスタンスメソッドの使い方

TypedArray.prototype.reduceRight()インスタンスメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

TypedArray.prototype.reduceRight()メソッドは、TypedArrayの要素を右端から左端に向かって走査し、その結果を単一の値に集約するためのメソッドです。このメソッドは、指定された「アキュムレーター関数(callbackFn)」をTypedArrayの各要素に対して一度ずつ実行します。

アキュムレーター関数は、これまでの処理結果であるアキュムレーター、現在処理中の要素の値、そのインデックス、そして元のTypedArray自体を引数として受け取ります。関数が返す値は、次の要素の処理時にアキュムレーターとして引き継がれます。この処理は、TypedArrayの最後の要素から最初の要素まで繰り返されます。

任意でinitialValue(初期値)を指定できます。initialValueが指定された場合、アキュムレーター関数は最初の呼び出しでその値をアキュムレーターとして使用し、TypedArrayの最後の要素から処理を開始します。initialValueを省略した場合、TypedArrayの最後の要素が初期値として採用され、処理は最後から2番目の要素から開始されます。ただし、initialValueが指定されていない空のTypedArrayに対してこのメソッドを呼び出すと、TypeErrorが発生しますので注意が必要です。

最終的に、すべての要素を処理し終えた後にアキュムレーターが保持する単一の結果値が、このメソッドの戻り値となります。これにより、配列の内容を合計したり、特定の条件で結合したりといった集約処理を、右から左へという方向で効率的に行えます。

公式リファレンス: TypedArray.prototype.reduceRight()

構文(syntax)

1const myTypedArray = new Int8Array([1, 2, 3, 4]);
2const result = myTypedArray.reduceRight((accumulator, currentValue) => accumulator + currentValue, 0);

引数(parameters)

callbackFn, initialValue = undefined

  • callbackFn: 配列の各要素に対して実行されるコールバック関数。accumulator, currentValue, currentIndex, array の4つの引数を受け取ります。
  • initialValue: optional. 最初の呼び出しで accumulator に渡される初期値。指定されない場合は、配列の最後の要素が初期値として使用されます。

戻り値(return)

any

TypedArray.prototype.reduceRight()メソッドは、配列の各要素に対してコールバック関数を右端から順に適用し、単一の値に集約した結果を返します。

関連コンテンツ

関連プログラミング言語