<small id="c5gj0"></small>
    <ol id="c5gj0"><b id="c5gj0"></b></ol><i id="c5gj0"></i>

  1. <nobr id="c5gj0"><rp id="c5gj0"></rp></nobr>

          JS 數組方法 every 和 some 的區別

          作者:辰風沐陽 閱讀:3237 發布時間:2022-09-04 上次更新:2022-09-04

          1. 前言


          JS 數組方法 every 和 some 的區別 ? 這是某位前端玩家遇到的面試題

          特定場景合理的使用 JS 方法,不僅可以減少我們的代碼量,還能更輕松的閱讀別人的代碼,同時,也能更好的應對面試

          2. every 和 some 相同點


          every 和 some 都是數組迭代方法,都可以遍歷數組。它們的第一個參數都是一個閉包函數,這個閉包函數接收最多接收三個參數,最少接收一個參數,大多數場景下,傳遞一個參數就足夠使用了。它們的返回值都是布爾值

          • item 必寫參數, 當前元素
          • index 可選參數, 當前元素的索引值
          • array 可選參數, 當前遍歷的數組,也就是 arr
          1. const arr = [2, 4, 6, 8, 10]
          2. arr.every((item, index, array) => {
          3. return item < 5
          4. })
          5. arr.some((item, index, array) => {
          6. return item < 5
          7. })

          3. every 和 some 的區別


          every() 方法用于檢測數組的所有元素是否都符合指定條件,即 全真才真

          every() 方法會遍歷數組,當檢測到有一個元素不滿足指定條件時,直接返回 false,并且停止遍歷,剩余元素不會再進行檢測

          1. const arr = [2, 4, 6, 8, 10]
          2. const res1 = arr.every(item => item < 5) // false
          3. const res2 = arr.every(item => item < 20) // true

          特別注意: every() 不會對空數組進行檢測,當數組為空時,直接返回 true

          1. const res = [].every(item => item < 5)
          2. console.log(res); // true

          some() 方法用于檢測數組中是否有滿足指定條件的元素,即 一真就真

          some() 方法會遍歷數組,當檢測到有一個元素滿足指定條件時,直接返回 true,并且停止遍歷,剩余元素不會再進行檢測

          1. const arr = [2, 4, 6, 8, 10]
          2. const res1 = arr.some(item => item < 1) // false
          3. const res2 = arr.some(item => item < 5) // true

          特別注意: some() 不會對空數組進行檢測,當數組為空時,直接返回 false

          1. const res = [].some(item => item < 1)
          2. console.log(res); // false

          4. every 和 some 總結


          every() 方法用于檢測數組元素是否都滿足指定條件,都滿足時才返回 true;有一個不滿足時,返回 false,剩余元素不再進行檢測。對于空數組,不會檢測,直接返回 true

          some() 方法用于檢測數組中是否有元素滿足指定條件,有一個滿足就返回 true;內部遍歷數組時,遇到滿足指定條件的元素,就返回 true,剩余元素不再進行檢測,對于空數組,不會檢測,直接返回 false

          標簽: JavaScript 面試題

          亚洲毛片不卡av在线播放一区|一级做a爰片久久毛|十八辽一亚洲欧美中文字幕|voyeur精品偷窥|亚洲mv国产mv在线mv综合试看
          <small id="c5gj0"></small>
            <ol id="c5gj0"><b id="c5gj0"></b></ol><i id="c5gj0"></i>

          1. <nobr id="c5gj0"><rp id="c5gj0"></rp></nobr>