js数组方法应用(常用方法)

js数组方法应用

forEach()

为数组中的每个元素调用一个函数

注意: map() 不会对空数组进行回调。

//给每个元素的type属性赋值
list.forEach(item => {
  item.type = "type1"
})
map()

返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。

注意: map() 不会对空数组进行检测。

注意: map() 不会改变原始数组。

//返回一个只有id的数组
let idList = list.map(item => {
  return item.id
})
filter()

创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。

注意: filter() 不会对空数组进行检测。

注意: filter() 不会改变原始数组。

//返回所有元素code等于this.code的数组
let arr = this.options.filter(item => item.code === this.code)
every()

用于检测数组所有元素是否都符合指定条件

  • 如果所有元素都满足条件,则返回 true。
  • 如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。
// 判断学生性别是否一致 返回true或false
let students = this.data;
let code = students[0].sexCode;
let result = students.every(item => item.sexCode === code)
find()

返回通过测试(函数内判断)的数组的第一个元素的值

注意: find() 不会对空数组进行检测。

注意: find() 不会改变原始数组。

//返回第一个元素value等于this.code的对象
let obj = list.find(item => item.value === this.code);
reduce()

接收一个函数作为累加器,reduce为数组中的每一个元素依次执行回调函数

注意: reduce() 对于空数组是不会执行回调函数的。

//语法
arr.reduce(function(prev, cur, index, arr), initialValue)
arr.reduce(function(初始值, 当前元素, 当前索引, 当前所属数组对象), 传递的初始值)
total, currentValue为必需参数
//以5为初始值累加说所有数组元素
let arr = [1, 2, 3];
let sum = arr.reduce((prev, cur, index, arr) => {
    return prev + cur;
},5)  //11
some()

用于检测数组中的元素是否满足指定条件,有一个满足则返回true

注意: some() 不会对空数组进行检测。

注意: some() 不会改变原始数组。

//数组中是否存在元素>30 返回true或false
var arr = [1,32,4,26];
let bb = arr.some(item => { return item > 30 })
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值