Array reduce() trong JavaScript



Miêu tả

Phương thức array reduce() trong Javascript áp dụng một hàm đồng thời với hai giá trị của mảng (từ trái qua phải) khi để giảm nó tới một giá trị đơn.

Cú pháp

Cú pháp của nó như sau

array.reduce(callback[, initialValue]);

Chi tiết về tham số

  • callback − Hàm thực thi trên mỗi giá trị của mảng.

  • initialValue − Đối tượng được sử dụng như là tham số đầu tiên tới lần gọi đầu của callback.

Trả về giá trị

Trả về giá trị đơn đã giảm của mảng.

Khả năng tương thích

Phương thức này là một phần JavaScript bổ sung tới chuẩn ECMA-262. Để khiến nó làm việc, bạn thêm code sau vào phần trên cùng của script của bạn.

if (!Array.prototype.reduce)
{
   Array.prototype.reduce = function(fun /*, initial*/)
   {
      var len = this.length;
      
      if (typeof fun != "function")
      throw new TypeError();
      
      // no value to return if no initial value and an empty array
      if (len == 0 && arguments.length == 1)
      throw new TypeError();
      
      var i = 0;
      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 >= len)
            throw new TypeError();
         }
         while (true);
      }
      for (; i < len; i++)
      {
         if (i in this)
         rv = fun.call(null, rv, this[i], i, this);
      }
      return rv;
   };
}

Ví dụ

Bạn thử ví dụ sau:


   
      JavaScript Array reduce Method
   
   
   
   
      
      
   

Kết quả

total is : 6

Các bài học JavaScript khác tại VietJack:


doi_tuong_array_trong_javascript.jsp