如何同時針對陣列中的兩個值從右向左應用一個函式?
在 JavaScript 中使用 reduceRight() 方法可以同時針對陣列中的兩個值從右向左應用一個函式,從而將它們縮減為一個單一的值。
以下為其引數 −
- callback − 在陣列中每項上執行的函式。
- initialValue − 用於作為 callback 第一次呼叫的第一個引數的物件
示例
你可以嘗試執行以下程式碼以瞭解如何在 JavaScript 中使用 reduceRight() 方法 −
<html>
<head>
<title>JavaScript Array reduceRight Method</title>
</head>
<body>
<script>
if (!Array.prototype.reduceRight)
{
Array.prototype.reduceRight = function(fun /*, initial*/)
{
var len = this.length;
if (typeof fun != "function")
throw new TypeError();
// no value to return if no initial value, empty array
if (len == 0 && arguments.length == 1)
throw new TypeError();
var i = len - 1;
if (arguments.length >= 2)
{
var rv = arguments[1];
} else {
do
{
if (i in this)
{
rv = this[i--];
break;
}
// if array contains no values, no initial value to return
if (--i < 0)
throw new TypeError();
}
while (true);
}
for (; i >= 0; i--)
{
if (i in this)
rv = fun.call(null, rv, this[i], i, this);
}
return rv;
};
}
var total = [0, 1, 2, 3].reduceRight(function(a, b) { return a + b; });
document.write("total is : " + total );
</script>
</body>
</html>
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP