forEach【要素処理】メソッド
reduce【隣接要素処理 (順方向)】メソッド
reduceRight【隣接要素処理 (逆方向)】メソッド
%TypedArray%.prototype.forEach【要素処理】メソッド
メモ
- 各要素を指定関数で処理
- Array【配列】オブジェクトのforEach【要素処理】に類似
- コールバック関数で配列の変更も可能
- 関連
構文
forEach( callbackfn [ , thisArg ] )
- callbackfn:コールバック関数
引数名 (例) 説明 value 要素値 index 要素インデックス typedArray 配列 オブジェクト 戻り値型 説明 なし - thisArg:コールバック関数内でthis で参照されるオブジェクト
なし
TypeError 例外:callbackfn が呼び出し可能な関数オブジェクト以外
例
/**
* forEach【要素処理】のコールバック関数
* @param {number} value 要素の値
* @param {number} index 要素のインデックス
* @param {Int32Array} typedArray 配列
*/
function callbackForEach(value, index, typedArray) {
console.log("[" + index + "]:" + value);
}
var typedArray = new Int32Array([1, -6, 3, -4, 5, -2]);
typedArray.forEach(callbackForEach);
// 出力:[0]:1
// 出力:[1]:-6
// 出力:[2]:3
// 出力:[3]:-4
// 出力:[4]:5
// 出力:[5]:-2
%TypedArray%.prototype.reduce【隣接要素処理 (順方向)】メソッド
メモ
- 各要素を順方向に処理 (直前要素の処理結果を引継ぎ)
- Array【配列】オブジェクトのreduce【隣接要素処理 (順方向)】に類似
- コールバック関数で配列の変更も可能
- 関連
構文
reduce( callbackfn [ , initialValue ] )
- callbackfn:コールバック関数
引数名 (例) 説明 previousValue 指定された初期値 (初回) または 1つ前の呼び出し時の戻り値 currentValue 現在の要素値 currentIndex 現在の要素インデックス typedArray 配列 オブジェクト 戻り値型 説明 任意 次回の呼び出しpreviousValue引数 - initialValue:
初期値 (初回コールバック関数呼び出しのpreviousValue)
省略:2つ目の要素からコールバック関数が呼び出され、1つ目の要素値がpreviousValue引数
最後のコールバック関数の戻り値 (空配列で初期値指定の場合、初期値)
TypeError 例外:callbackfn が呼び出し可能な関数オブジェクト以外 または 空配列で初期値が未指定
例
/**
* reduce【隣接要素処理 (順方向)】のコールバック関数
* @param {number} previousValue 指定された初期値 (初回) または 1つ前の呼び出し時の戻り値
* @param {number} currentValue 現在の要素値
* @param {number} currentIndex 現在の要素インデックス
* @param {Int32Array} typedArray 配列 オブジェクト
* @return {number} 現在の要素値
*/
function callbackReduce(previousValue, currentValue, currentIndex, typedArray) {
console.log("[" + currentIndex + "]:" + currentValue + " (" + (currentValue - previousValue) + ")");
return currentValue;
}
var typedArray = new Int32Array([1, -6, 3, -4, 5, -2]);
console.log(typedArray.reduce(callbackReduce, 0));
// 出力:[0]:1 (1)
// 出力:[1]:-6 (-7)
// 出力:[2]:3 (9)
// 出力:[3]:-4 (-7)
// 出力:[4]:5 (9)
// 出力:[5]:-2 (-7)
// 出力:-2
%TypedArray%.prototype.reduceRight【隣接要素処理 (逆方向)】メソッド
メモ
- 各要素を逆方向に処理 (直前要素の処理結果を引継ぎ)
- Array【配列】オブジェクトのreduceRight【隣接要素処理 (逆方向)】に類似
- コールバック関数で配列の変更も可能
- 関連
構文
reduceRight( callbackfn [ , initialValue ] )
- callbackfn:コールバック関数
引数名 (例) 説明 previousValue 指定された初期値 (初回) または 1つ前の呼び出し時の戻り値 currentValue 現在の要素値 currentIndex 現在の要素インデックス typedArray 配列 オブジェクト 戻り値型 説明 任意 次回の呼び出しpreviousValue引数 - initialValue:
初期値 (初回コールバック関数呼び出しのpreviousValue)
省略:最後から2つ目の要素からコールバック関数が呼び出され、最後の要素値がpreviousValue引数
最後のコールバック関数の戻り値 (空配列で初期値指定の場合、初期値)
TypeError 例外:callbackfn が呼び出し可能な関数オブジェクト以外 または 空配列で初期値が未指定
例
/**
* reduceRight【隣接要素処理 (逆方向)】のコールバック関数
* @param {number} previousValue 指定された初期値 (初回) または 1つ前の呼び出し時の戻り値
* @param {number} currentValue 現在の要素値
* @param {number} currentIndex 現在の要素インデックス
* @param {Int32Array} typedArray 配列 オブジェクト
* @return {number} 現在の要素値
*/
function callbackReduceRight(previousValue, currentValue, currentIndex, typedArray) {
console.log("[" + currentIndex + "]:" + currentValue + " (" + (currentValue - previousValue) + ")");
return currentValue;
}
var typedArray = new Int32Array([1, -6, 3, -4, 5, -2]);
console.log(typedArray.reduceRight(callbackReduceRight, 0));
// 出力:[5]:-2 (-2)
// 出力:[4]:5 (7)
// 出力:[3]:-4 (-9)
// 出力:[2]:3 (7)
// 出力:[1]:-6 (-9)
// 出力:[0]:1 (7)
// 出力:1
関連
- Array【配列】オブジェクト
- ECMAScript 2015 (6) (英語)
- ECMAScript 2016 (7) (英語)