JavaScript数组的常用方法

Array map()方法

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

map() 方法按照原始数组元素顺序依次处理元素。

map() 不会对空数组进行检测

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

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

参数描述
function(item,index,arr)必须。函数,数组中的每个元素都会执行这个函数
 参数说明
 item必须。当前元素的值
 index可选。当前元素的索引值
 arr可选。当前元素属于的数组对象
    const arr = [{
      name:'zs',
      age:20,
      gender:'男'
    },{
      name:'ls',
      age:10,
      gender:'女'
    }]
    // map方法不改变原数组
    const mapArr = arr.map(item => {
      return {
        name:item.name,
        age: item.age,
        grade: '一年级'
      }
    })
    console.log('mapArr', mapArr);
    [{name: "zs", age: 20, grade: "一年级"},
     {name: "ls", age: 10, grade: "一年级"}]
    console.log('arr', arr);
    [{name: "zs", age: 20, gender: "男"},
     {name: "ls", age: 10, gender: "女"}]
// 从接口得到数据 res:
let r = res.map(item => {
    return {
        title: item.name,
        sex: item.sex === 1? '男':item.sex === 0?'女':'保密',
        age: item.age,
        avatar: item.img
    }
})

// 也可以省略 return:
const users=res.items.map(item => ({
    url: item.html_url,      
    img: item.avatar_url,      
    name: item.login,
    })
)

Array filter()方法

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

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

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

检测数值元素,并返回符合条件所有元素的数组。

参数描述
function(item,index,arr)必须。函数,数组中的每个元素都会执行这个函数
 参数说明
 item必须。当前元素的值
 index可选。当前元素的索引值
 arr可选。当前元素属于的数组对象
    const arr = [{
      name:'zs',
      age:20,
      gender:'男'
    },{
      name:'ls',
      age:10,
      gender:'女'
    }]
    // filter方法不改变原数组
    const filterArr = arr.filter(item => {
      return item.age === 10
    })
    console.log('filterArr', filterArr);
    [{name: "ls", age: 10, gender: "女"}]
    console.log('arr', arr);
    [{name: "zs", age: 20, gender: "男"},
     {name: "ls", age: 10, gender: "女"}]

Array some() 方法

some() 方法用于检测数组中的元素是否满足指定条件(函数提供)

some() 方法会依次执行数组的每个元素:

  • 如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
  • 如果没有满足条件的元素,则返回false。

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

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

只要有一个满足就返回true,全都不满足时返回false。

参数描述
function(item,index,arr)必须。函数,数组中的每个元素都会执行这个函数
 参数说明
 item必须。当前元素的值
 index可选。当前元素的索引值
 arr可选。当前元素属于的数组对象
    const some_Arr = arr.some(item => {
      return item.age > 15
    })
    console.log('some_Arr', some_Arr); // true
    console.log('arr', arr);
    [{name: "zs", age: 20, gender: "男"},
     {name: "ls", age: 10, gender: "女"}]

Array every() 方法

every() 方法用于检测数组所有元素是否都符合指定条件(通过函数提供)。

every() 方法使用指定函数检测数组中的所有元素:

  • 如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。
  • 如果所有元素都满足条件,则返回 true。

every() 不会对空数组进行检测。

every() 不会改变原始数组。

有一个不满足就返回false,全都满足才返回true。

    const every_Arr = arr.every(item => {
      return item.age > 15
    })
    console.log('every_Arr', every_Arr); // false
    console.log('arr', arr);
    [{name: "zs", age: 20, gender: "男"},
     {name: "ls", age: 10, gender: "女"}]

Array forEach() 方法

forEach() 方法用于调用数组的每个元素,并将元素传递给回调函数。

forEach() 对于空数组是不会执行回调函数的。

Array 对象方法总结

方法描述
concat()连接两个或更多的数组,并返回结果。
copyWithin()从数组的指定位置拷贝元素到数组的另一个指定位置中。
entries()返回数组的可迭代对象。
every()检测数值元素的每个元素是否都符合条件。
fill()使用一个固定值来填充数组。
filter()检测数值元素,并返回符合条件所有元素的数组。
find()返回符合传入测试(函数)条件的数组元素。
findIndex()返回符合传入测试(函数)条件的数组元素索引。
forEach()数组每个元素都执行一次回调函数。
from()通过给定的对象中创建一个数组。
includes()判断数组是否包含一个指定的值,返回布尔值。
indexOf()如果元素存在,返回索引位置,如果不存在返回-1
isArray()判断对象是否为数组。
join()数组拼接成字符串。
keys()返回数组的可迭代对象,包含原始数组的键(key)。
lastIndexOf()返回元素最后出现的索引位置,如果不存在返回-1
map()通过指定函数处理数组的每个元素,并返回处理后的数组。
pop()删除数组的最后一个元素并返回删除的元素。
push()向数组的末尾添加一个或更多元素,并返回新的长度。
reduce()将数组元素计算为一个值(从左到右)。
reduceRight()将数组元素计算为一个值(从右到左)。
reverse()反转数组的元素顺序。
shift()删除并返回数组的第一个元素。
slice()选取数组的一部分,并返回一个新数组。
some()检测数组元素中是否有元素符合指定条件。
sort()对数组的元素进行排序。
splice()从数组中添加或删除元素。
toString()把数组转换为字符串,并返回结果。
unshift()向数组的开头添加一个或更多元素,并返回新的长度。
valueOf()返回数组对象的原始值。

 

 

weixin073智慧旅游平台开发微信小程序+ssm后端毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
python017基于Python贫困生资助管理系统带vue前后端分离毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值