ES6 数组处理
1.使用find、filter筛选数组
const personList = [
{ name: '刘德华', age: 56 },
{ name: '蔡徐坤', age: 25 },
{ name: '熊凤山', age: 65 }
]
使用find 查询出name=’刘德华‘的数据
const result = personList.find(r => r.name == '刘德华')
console.log(result) //{name: '刘德华', age: 56}
使用filter查询出name='刘德华'的数据
const result = personList.filter(r => r.name == '刘德华')
console.log(result) //{name: '刘德华', age: 56}
区别:
filter 查询不到则返回 [] 空数组
find 查询不到则返回undefind 返回第一条复合的对象 并非数组
2.获取两个数组共同集合 使用some
const personList = [
{ name: '刘德华', age: 56 },
{ name: '蔡徐坤', age: 25 },
{ name: '熊凤山', age: 65 }
]
const personList2 =
[
{ name: '刘德华', age: 56 },
{ name: '乌仁吉', age: 45 },
{ name: '熊凤山', age: 65 }
]
const result = personList.filter(r => personList2.some(x => x.name == r.name));
console.log(result) // [{"name": "刘德华","age": 56},{"name": "熊凤山","age": 65}]
3.排序
使用sort关键字 按年龄排序
const personList = [
{ name: '刘德华', age: 56 },
{ name: '蔡徐坤', age: 25 },
{ name: '熊凤山', age: 65 }
]
返回降序:
console.log(personList .sort((a,b)=>{return b.age-aage}));
返回升序
console.log(personList .sort((a,b)=>{return aage -bage}));
4.查询成一个新数组(只需要部分字段) 使用map
//定义一个数组
const personList = [
{ name: '刘德华', age: 56, sex: '男' },
{ name: '蔡徐坤', age: 25, sex: '女' },
{ name: '熊凤山', age: 65, sex: '男' }
]
//查询name和sex
let newPersonList = personList.map(r => {
return {
newName: r.name,
newSex: r.sex
}
})
console.log(newPersonList)
使用
some()
方法的一个常见场景是检查数组中是否存在满足特定条件的元素
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)