资讯专栏INFORMATION COLUMN

js数组的迭代方法

tabalt / 3318人阅读

摘要:与和的相同点遍历数组三个参数分别是数组具体项,位置,数字本身返回的都是布尔值和的区别字面意思,遍历数组每一项,若全部,则返回参考还是字面意思,遍历数组每一项,若某一项为,则返回参考对数组中的每一项运行给定函数返回该函数会返回的项组成的集合对

every与some

1 every()和some()的相同点

遍历数组

三个参数分别是item,index,arr(数组具体项,位置,数字本身)

返回的都是布尔值

2 every()和some()的区别

every: 字面意思 ,遍历数组每一项,若全部true,则返回true(参考&&)

    let arr1 = [1, 1, 1, 1, 1,]
    let arr2 = [1, 1, 2, 1, 1,]
    let result1 = arr1.every((item) => {
        return item == 1 //true
    })
    let result2 = arr2.every((item) => {
        return item == 1 //false
    })

some:还是字面意思,遍历数组每一项,若某一项为true,则返回true(参考||)

    let arr1 = [1, 1, 1, 1, 1,]
    let arr2 = [1, 1, 2, 1, 1,]
    let result1 = arr1.some((item) => {
        return item == 1 //true
    })
    let result2 = arr2.some((item) => {
        return item == 1 //true
    })
filter

对数组中的每一项运行给定函数,返回该函数会返回true的项组成的集合

var result = number.filter(function(item,index,arr) {
    return (item > 3)
})
console.log(result) //[4,5,6]
forEach

对数组中的每一项运行给定函数,没有返回值
对项进行更改操作,不会对原数组产生影响

number.forEach(function(item,index,array) {
    if(index == 2) {
        item = "qwe"
        console.log(index,item) //item == "qwe"
    }
})
console.log(number) //原数组


var result = number.forEach(function(item,index,array) { 
    return item = "qwe" 
}) 
console.log(result)//undefined
map

迭代,返回每次函数调用的结果组成的数组

var result = number.map(function(item,index,array) { 
    return item = "qwe" 
}) 
console.log(result) // ["qwe","qwe","qwe","qwe","qwe","qwe","qwe","qwe","qwe"]

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/99529.html

相关文章

  • js常见循环迭代:for loop, forEach, for...in... for...

    摘要:下面就总结下中常见的几种循环方法。因为循环将遍历对象本身的所有可枚举属性,以及对象从其构造函数原型中继承的属性。上也明确提示不应该用于迭代一个,其中索引顺序很重要。 引言 平时工作中循环的使用场景可以说是非常之多了,昨天改别人代码时候有位同事非常喜欢用ES6等新特性,一个数组的遍历全部都是用for...of...,然后业务需求要用到数组中的序号index值,就很尴尬了,我只能改回for...

    Leo_chen 评论0 收藏0
  • JS迭代器模式《JavaScript设计模式与开发实践》阅读笔记

    摘要:但实际中,内部迭代器和外部迭代器两者并无优劣。迭代器并不只迭代数组迭代器模式不仅能迭代数组,还可以迭代一些类数组对象。晚安了,参考设计模式与开发实践曾探本文作者本文链接迭代器模式设计模式与开发实践阅读笔记 迭代器模式:一个相对简单的模式,目前绝大多数语言都内置了迭代器,以至于大家都不觉得这是一种设计模式 迭代器模式 迭代器模式指提供一种方法访问一个聚合对象中的各个元素,而又不需要暴露该...

    djfml 评论0 收藏0
  • JS数组迭代

    摘要:方法对数组的每个元素执行一次提供的函数。与的区别是返回一个循环处理后的数组,不改变原数组的值,而则只是遍历一遍数组,执行提供的函数。对于放在空数组上的任何条件,此方法返回。 forEach forEach() 方法对数组的每个元素执行一次提供的函数。 var array1 = [a, b, c]; array1.forEach(function(element) { consol...

    cc17 评论0 收藏0
  • js迭代方法

    摘要:根据使用的方法不同,这个函数执行后的返回值可能会也可能不会影响方法的返回值。对数组中的每一项运行给定函数,返回改函数会返回的项组成的数组。 ECMAScript 为数组定义了五个迭代方法。 每个方法都接收两个参数:要在每一项上运行的函数和(可选的)运行该函数的作用域对象——影响this的值。 传入这些方法中的函数会接收三个参数:数组项的值、该项在数组中的位置和数组对象本省。 根据使用的...

    fsmStudy 评论0 收藏0
  • js数组操作--使用迭代方法替代for循环

    摘要:还有一个就是,我本身在数组的遍历上,基本都是用循环进行操作,在开始使用了迭代方法之后,我循环用的很少。对数组中每一项运行给定函数。返回该函数会返回的项组成的数组。 前言 数组的迭代方法,这个想必大家都不陌生了,可能刚入门的人暂时还没接触到这个。但是以后的开发中,肯定会用得上的。我自身的一个使用经历就是,如果迭代方法用的适当,不但可以减少代码量,也能使代码可读性更强,性能上的优化也是肯定...

    kamushin233 评论0 收藏0
  • js for of 无法改变数组变量

    摘要:今天写个函数时想遍历数组,想想没怎么用过这类的语法,于是做了个尝试,竟发现无法改变数组元素。这里我们可以看到的本质是返回一个迭代器第三,迭代器是如何获得值的迭代器通过方法返回值,而不是指向地址,所以在迭代中无法改变数组元素参考材料 今天写个函数时想遍历数组,想想没怎么用过for...of...这类的语法,于是做了个尝试,竟发现for...of...无法改变数组元素。 贴代码,上例子 l...

    hover_lew 评论0 收藏0

发表评论

0条评论

tabalt

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<