首頁 >web前端 >前端問答 >JavaScript中的迭代方法有哪些

JavaScript中的迭代方法有哪些

青灯夜游
青灯夜游原創
2021-10-28 14:41:062357瀏覽

JavaScript中的迭代方法:1、every(),可查詢數組中的每一個元素是否都滿足某一條件;2、some(),可查詢數組中每個元素是否滿足某些條件;3、filter();4、map();5、forEach();6、reduce()。

JavaScript中的迭代方法有哪些

本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。

定義

1、迭代(iterate),指的是依照某種順序逐一存取清單中的每一項。例如,for語句。
2、迴圈(loop),指的是在滿足條件的情況下,重複執行同一段程式碼。比如,while語句。
3、遍歷(traversal),指的是依照一定的規則來存取樹狀結構中的每個節點,而且每個節點都只造訪一次。
4、遞歸(recursion),指的是一個函數不斷呼叫自身的行為。例如,以程式方式輸出著名的斐波納契數列。

JavaScript中的迭代方法

1、every()

用來查詢陣列中的每一個是否 滿足某一條件

var num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var number = num.every(function(item,index){
      return (item > 5);   // 判断传入的值是否全部都大于5
})
console.log(number);   // false 只要有一个不满足就为 false

2、some()

查詢數組中每項滿足某些條件

var num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var number = num.every(function(item,index){
      return (item > 5);   // 判断传入的值哪些项大于5
})
console.log(number);   // false 只要有一个满足就为true

3、filter()

篩選符合條件的項,組成新陣列

var num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var number = num.filter(function(item,index){
      return (item > 5);   // 判断传入的值哪些项大于5
})
console.log(number);   // [6, 7, 8, 9]

4、map()

透過計算原始數組中的項,來組成新的數組

var num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var number = num.map(function(item,index){
      return item - 1;   // 判断传入的值哪些项大于5
})
console.log(number);   // [0, 1, 2, 3, 4, 5, 6, 7, 8]

5、forEach()

傳入數組的每一項

var num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var number = num.forEach(function(item,index){
      console.log(item);   // [1, 2, 3, 4, 5, 6, 7, 8, 9]
})

6、reduce()

數組的前項和後項進行累計值計算

var num = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var number = num.reduce(function(prev,cur,index){
      return prev + cur;
})
console.log(number);   // 1+2+3...+9 = 45 本质上就是数组中的项 累计运算的过程

注意

# forEach 這個迭代方法在本質上和for 迴圈沒有什麼區別,但是在使用該方法的時候會傳入三個參數,在輸出時候傳入第一項,也就是輸出數組中的每一項,如果傳入第二項,那麼會循環迭代數組的index 的下標值,如果傳入的是第三項,那麼就是循環迭代整個num 數組。

【推薦學習:javascript高階教學

#

以上是JavaScript中的迭代方法有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn