自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一篇文章帶你了解JavaScript 數組迭代方法

開發(fā) 前端
在數組中的每個元素上一次操作的方法,稱為迭代方法。數組的迭代方法與循環(huán)緊密相關。

[[348668]]

在數組中的每個元素上一次操作的方法,稱為迭代方法。數組的迭代方法與循環(huán)緊密相關。

一、方法

1. Array.forEach()

forEach()方法對數組的每個元素執(zhí)行一次提供的函數(一個回調函數)。可以使用[forEach()將數組中的每個元素打印到文檔。

例1:

  1. var fruits = ["Apple""Mango""Banana""Orange"]; 
  2.      var result = document.getElementById("result"); 
  3.  
  4.      fruits.forEach(function(element, index, array) { 
  5.         result.innerHTML += index + ": " + element + "<br>"
  6. }); 

 

注:

該函數帶有3個參數:元素值(必填),元素索引(可選),數組本身(可選)。

例 2 :

由于2個參數(索引,數組)是可選的。

  1. var fruits = ["Apple""Mango""Banana""Orange"]; 
  2.             var result = document.getElementById("result"); 
  3.  
  4.             fruits.forEach(function(element) { 
  5.                 result.innerHTML += element + "<br>"
  6.             }); 

 

2. Array.map()

map()方法返回一個新數組,不會改變原始數組。同時新數組中的元素為原始數組元素調用函數處理后的值,并按照原始數組元素順序依次處理元素。

注意:

map() 不會對空數組進行檢測。

例1:從每個值乘以2的元素創(chuàng)建一個新數組。

  1. <script> 
  2.             function myFunc() { 
  3.                 var nums1 = [1, 5, 20, 14, 55, 16]; 
  4.                 var nums2 = nums1.map(twice); 
  5.                 document.getElementById("result").innerHTML = nums2; 
  6.             } 
  7.  
  8.             function twice(element, index, array) { 
  9.                 return (element * 2); 
  10.             } 
  11. </script> 

 

注:

該函數帶有3個參數:元素值(必填),元素索引(可選),數組本身(可選)。

例2:

由于2個參數(索引,數組)是可選的:

var nums1 = [1, 5, 20, 14, 55, 16]; var nums2 = nums1.map(twice); function twice(element) { return (element * 2); }

 

注:

該函數帶有3個參數:元素值(必填),元素索引(可選),數組本身(可選)。

3. Array.filter()

filter()是JavaScript中Array的常用操作,用于把Array的某些元素過濾掉,然后返回剩下的元素。其主要原理是 filter會把傳入的函數依次作用于每個元素,然后根據返回值是 true 還是false決定保留還是丟棄該元素。

例:使用值等于或大于18的元素創(chuàng)建一個新數組。

  1. var age = [1, 30, 39, 29, 10, 13]; 
  2.      var val = age.filter(isAdult); 
  3.  
  4.      function isAdult(element, index, array) { 
  5.            return element >= 18; 

由于2個參數(索引,數組)是可選的,因此例:可以跳過它們:

例:

  1. var age = [1, 30, 39, 29, 10, 13]; 
  2.     var val = age.filter(isAdult); 
  3.  
  4.     function isAdult(element) { 
  5.         return element >= 18; 

 

注:

該函數帶有3個參數:元素值(必填),元素索引(可選),數組本身(可選)。

4. Array.reduce()

reduce()方法接收一個函數作為累加器,數組中的每個值(從左到右)開始縮減,最終計算為一個值。

這在數字中很常見,例如找到數組中所有數字的總和。

例:

  1. var nums = [10, 20, 30, 40, 50]; 
  2.     var sum = nums.reduce(getTotal); 
  3.  
  4.     function getTotal(x, y) { 
  5.        return (x + y); 
  6.     } 

 

注:

該函數帶有3個參數:元素值(必填),元素索引(可選),數組本身(可選)。

5. Array.find()

find()方法返回通過給定檢測的數組中的第一個值。

將找到等于或大于18的第一個元素:

例:

  1. var num = [1, 30, 39, 29, 10, 13]; 
  2.     var val = num.find(myFunc); 
  3.  
  4.     function myFunc(element) { 
  5.        return element >= 18; 
  6.     } 

 

注:

該函數帶有3個參數:元素值(必填),元素索引(可選),數組本身(可選)。

6. Array.findIndex()

findIndex()方法返回通過給定檢測的數組中的第一個索引值。

例:將找到等于或大于18的第一個元素的索引值。

  1. var num = [1, 30, 39, 29, 10, 13]; 
  2.     var val = num.findIndex(myFunc); 
  3.  
  4.     function myFunc(element) { 
  5.         return element >= 18; 
  6.     } 

 

注:

該函數帶有3個參數:元素值(必填),元素索引(可選),數組本身(可選)。

7. Array.every()

every()方法用于檢測數組所有元素是否都符合指定條件(通過函數提供檢測)。

例:檢查所有數組值是否等于或大于18。

  1. var nums = [1, 30, 39, 29, 10, 13]; 
  2.     var bool = nums.every(function (element) { 
  3.         return element >= 18; 
  4.     }); 
  5.  
  6.     document.getElementById("result").innerHTML = bool; 

 

注:

該函數帶有3個參數:元素值(必填),元素索引(可選),數組本身(可選)。

二、總結

本文基于JavaScript基礎,介紹了 數組7種迭代方法。每一種都采用案例加運行效果圖展示的方式,讓讀者能夠更容易理解。

歡迎大家積極嘗試,有時候看到別人實現起來很簡單,但是到自己動手實現的時候,總會有各種各樣的問題,切勿眼高手低,勤動手,才可以理解的更加深刻。

 

代碼很簡單,希望對你學習有幫助。

本文轉載自微信公眾號「前端進階學習交流」,可以通過以下二維碼關注。轉載本文請聯系前端進階學習交流公眾號。

 

責任編輯:武曉燕 來源: 前端進階學習交流
相關推薦

2023-09-01 16:32:36

JavaScript

2023-06-06 15:45:40

JavaScript數組

2021-01-08 09:03:01

JavaScript 數組數據

2020-11-10 10:48:10

JavaScript屬性對象

2021-01-29 18:41:16

JavaScript函數語法

2021-02-02 18:39:05

JavaScript

2021-06-04 09:56:01

JavaScript 前端switch

2023-07-30 15:18:54

JavaScript屬性

2021-01-26 23:46:32

JavaScript數據結構前端

2021-03-09 14:04:01

JavaScriptCookie數據

2021-06-24 09:05:08

JavaScript日期前端

2023-09-06 14:57:46

JavaScript編程語言

2024-01-30 13:47:45

2024-04-19 14:23:52

SwitchJavaScript開發(fā)

2021-03-05 18:04:15

JavaScript循環(huán)代碼

2021-05-18 08:30:42

JavaScript 前端JavaScript時

2020-11-20 08:53:35

JavaScript

2023-10-10 15:29:36

JavaScript開發(fā)

2021-03-21 07:36:43

Python迭代知識語言

2024-07-02 14:14:18

點贊
收藏

51CTO技術棧公眾號