この記事は編集レビューを必要としています。ぜひご協力ください。
この翻訳は不完全です。英語から この記事を翻訳 してください。
概要
アキュムレータに対して関数を適用し、隣り合う二つのtyped arrayの要素(左から右へ)は単一の値になります。このメソッドは、Array.prototype.reduce()
と同じアルゴリズムを持っています。TypedArrayは、ここではtyped array typesの一つです。
構文
typedarray.reduce(callback[, initialValue])
引数
callback
- typed array内の各要素で実行する関数。四つの引数を持ちます。:
previousValue
- コールバック関数の最後の呼び出しで以前に返された値。または、提供されている場合、
initialValue
(下を見てください)。 currentValue
- typed array内で処理されている現在の要素。
index
- typed array内で処理されている現在の要素のインデックス。
array
reduce
が呼ばれているtyped array。
initialValue
- オプション。
callback
関数の最初の呼び出しの最初の引数として使用するオブジェクト。
説明
reduce
メソッドは、typed array内に存在している各要素に対して一度callback
関数を実行します。その関数は、四つの引数を持ちます。: 初期値(または、以前のcallback
関数の呼び出しから返ってくる値)、現在の要素の値、現在のインデックス、反復を実施しているtyped array。
callback関数が最初に呼ばれたとき、previousValue
とcurrentValue
は、二つの値の一つを取り得ます。reduce
の呼び出し時にinitialValue
が与えられた場合、previousValue
はinitialValue
と等しくなり、currentValue
は、typed arrayの最初の値と等しくなります。initialValue
が与えられなかった場合、previousValue
は、typed arrayの最初の値と等しくなり、currentValue
は、二番目の値と等しくなります。
typed arrayが空で、initialValue
が与えられなかった場合、TypeError
がスローされます。typed arrayが(位置に関係なく)一つの要素しか持たなく、initialValue
が与えられなかった場合、もしくは、initialValue
が与えられたがtyped arrayが空の場合、callback
関数の呼び出しなしで、単独の値が返されることになります。
例
例: 配列内のすべての値を合計する
var total = new Uint8Array([0, 1, 2, 3]).reduce(function(a, b) { return a + b; }); // total == 6
仕様
仕様 | 状況 | コメント |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) The definition of '%TypedArray%.prototype.reduce' in that specification. |
Standard | 初期定義。 |
ブラウザ実装状況
機能 | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
基本サポート | ? | 37 (37) | ? | ? | ? |
機能 | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
基本サポート | ? | ? | 37.0 (37) | ? | ? | ? |