方法: 1. ステートメント "arr.reduce(function f(pre,curr){return pre cur})" を使用します; 2. "arr.reduceRight(function f(pre,curr){returnプリカー})」。
このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
#JavaScript を使用して配列の合計を求める
方法 1:reduce() を使用する
reduce () 配列要素を (左から右に) 値に計算します。
var a = [1, 2, 3, 4, 5]; var b =a.reduce(function f(pre, curr){ return pre + curr; }); console.log(b);
ログイン後にコピー
説明:
reduce() メソッドは、配列内のすべての要素に対して指定されたコールバック関数を呼び出すことができます。このコールバック関数の戻り値は累積結果であり、この戻り値は次回コールバック関数が呼び出されるときにパラメータとして提供されます。具体的な使用法は次のとおりです。
array.reduce(callbackfn[, initialVaule]);
ログイン後にコピー
パラメータの説明:
- array: 必須パラメータ、配列オブジェクト。
- callbackfn: 必須パラメータ。最大 4 つのパラメータを受け入れる関数。 reverse() メソッドは、配列内の要素ごとに callbackfn 関数を 1 回呼び出します。
- initialVaule: オプションのパラメータ。initialVaule が指定されている場合、蓄積を開始するための初期値として使用されます。 callbackfn 関数の最初の呼び出しでは、この値を配列値の代わりにパラメーターとして指定します。
reduce() メソッドの戻り値は、コールバック関数の最後の呼び出しによって取得された累積結果です。
パラメータinitialVauleが指定されている場合、reduce()メソッドは配列内の各要素に対してcallbackfn関数を(インデックスの昇順で)1回呼び出します。initialVauleが指定されていない場合、reduce()メソッドはcallbackfn 関数は、配列内の各要素に対して 1 回ずつ呼び出されます。callbackfn 関数は、2 つの要素から始まる各要素に対して呼び出されます。
コールバック関数の戻り値は、次回コールバック関数が呼び出されるときに、previousValue パラメーターとして提供されます。コールバック関数の最後の呼び出しで取得された戻り値は、recude() メソッドの戻り値です。このメソッドは、配列内の欠落要素に対してコールバック関数を呼び出しません。
コールバック関数の構文は次のとおりです:
function callbackfn(previousValue, currentVaule, currentIndex, array);
ログイン後にコピー
コールバック関数パラメータの説明:
- PreviousValue: 最後の呼び出しで取得された値コールバック関数に。 initialValue がreduce() メソッドに提供される場合、関数が最初に呼び出されたときのpreviousValueはinitialValueです。
- currentValue: 現在の要素配列の値。
- currentIndex: 現在の配列要素の数値インデックス。
- array: 要素を含む配列オブジェクト。
コールバック関数が最初に呼び出されるとき、パラメーターとして指定される値は、reduce() メソッドにInitialValue パラメーターがあるかどうかによって異なります。 initialValue が recude() メソッドに指定された場合、previousValue パラメーターはInitialValue であり、currentValue パラメーターは配列内の最初の要素の値です。
方法 2:reduceRight()
reduceRight() を使用して、配列要素を (右から左に) 値に計算します。
var arr = [1, 2, 3, 4, 5, 5]; var b =arr.reduceRight(function f(pre, curr){ return pre + curr; }); console.log(b);
ログイン後にコピー
説明:
reduceRight() メソッドは、配列内のすべての要素に対して指定されたコールバック関数を右から左に呼び出すことができます。このコールバック関数の戻り値は累積結果であり、この戻り値は次回コールバック関数が呼び出されるときにパラメータとして提供されます。
array.reduceRight(callbackfn[, initialValue]);
ログイン後にコピー
このメソッドの構文と使用法は、reduce() メソッドとほぼ同じですが、唯一の違いは、配列の右側からコールバック関数を呼び出すことです。 。 InitialValue が指定されている場合、reduceRight() メソッドは、配列内の要素ごとに callbackfn 関数をインデックスの降順で 1 回呼び出します。 InitialValue が指定されていない場合、reduceRight() メソッドは、最後から 2 番目の要素から開始して、インデックスの降順で各要素に対して callbackfn 関数を呼び出します。
[推奨学習:
JavaScript 上級チュートリアル]
以上がJavaScriptを使用して配列の合計を求める方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。