JS数组的5个迭代方法

262 阅读2分钟

注意:这五个方法都不会改变调用原数组

  • every()如果对于每一个元素的迭代都返回true,则这个方法返回true,有一项为false,就返回false
  • filter()对数组中的每一项运行给定函数,返回该函数会有返回true的项组成数组。
  • forEach()对数组进行遍历然后执行某些操作
  • map() 也是返回一个数组,而这个数组的每一项都是在原数组中对于的项上运行传入函数的结果。
  • some()当迭代到某一项为true时即返回true,剩下的项则不再进行迭代,该方法对于内存开销较小,推荐使用

一、 every()如果对于每一个元素的迭代都返回true,则这个方法返回true,有一项为false,就返回false

     // erery方法
      var number = [1,4,2,54,2,4,5,266,20]
      var everynmumber = number.every(function(item,index,array){
        return (item>2)
      })
      console.log(everynumber)//false

二、 filter()对数组中的每一项运行给定函数,返回该函数会有返回true的项组成数组。

      //filter方法
      var number = [1,3,5,6,4,8,2,10];
      var filternumber = number.filter(function(item,index,array){
        return (item>2)
      })
      console.log(filternumber)//[3,5,6,4,8,10]

三、 forEach()对数组进行遍历然后执行某些操作

const num = [10, 2, 5, 4, 87, 99]
const newsforEachArray = [];
num.forEach(item => {
	newsforEachArray.push(item)
})
console.log(newsforEachArray);//[10, 2, 5, 4, 87, 99]

四、 map() 也是返回一个数组,而这个数组的每一项都是在原数组中对于的项上运行传入函数的结果。

let num = [10,2,5,4,87,99]; let newsArray = num.map(item => { return item * 3 }) console.log(newsArray);//[30, 6, 15, 12, 261, 297]

五、 some()当迭代到某一项为true时即返回true,剩下的项则不再进行迭代,该方法对于内存开销较小,推荐使用

      //some方法
      var somenumber = number.some(function(item,index,array){
        return (item>2)
      })
      console.log(somenumber) //true