广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >如何从对象数组中筛选符合条件的值
  • 636
分享到

如何从对象数组中筛选符合条件的值

2024-04-02 19:04:59 636人浏览 安东尼
摘要

目录从对象数组中筛选符合条件的值js根据已有数组,从数组对象中筛选数据解决思路从对象数组中筛选符合条件的值 const arr = [1,2,3,4,5,6,7] const lis

从对象数组中筛选符合条件的值

const arr = [1,2,3,4,5,6,7]
const list = [
	{openId: 1, timelineId: 1, showNo: 1, uid: 1},
	{openId: 2, timelineId: 1, showNo: 1, uid: 1},
	{openId: 9, timelineId: 1, showNo: 1, uid: 1},
	{openId: 4, timelineId: 1, showNo: 1, uid: 1},
	{openId: 5, timelineId: 1, showNo: 1, uid: 1}
]
const params = list.filter(item=> arr.indexOf(item.openId) > -1)
console.log(params)

将两个对象数组根据相同的索引index合并为一个数组

this.currentTotalList = this.totalList.map((item, index) => ({ ...item, ...daysList[index] }))

将两个对象数组根据相同的键值合并为一个数组

let currentEveryList = this.everyList.map(item => ({...item, ...signList.filter(s => s.signDate === item.signDate)[0]}))

从当前数组中筛选符合条件的值

this.materialss = this.materials.filter(item => item.cateGoryId === this.curTab.categoryId)

js根据已有数组,从数组对象中筛选数据

例如,已得到以下源数据

        let dataArr = [
            { id: 1, age: 15 },
            { id: 2, age: 18 },
            { id: 3, age: 16 },
            { id: 4, age: 17 }
        ];

现在需要跟据获取的id数组(表格选中的行),筛选源数据

let goalArr = [1, 2];

解决思路

<script>
        let dataArr = [
            { id: 1, age: 15 },
            { id: 2, age: 18 },
            { id: 3, age: 16 },
            { id: 4, age: 17 }
        ];
        let goalArr = [1, 2];
        let resArr = [];
        goalArr.forEach((v, i) => {
            dataArr.forEach((item, index) => {
                if (item.id === v) {
                    resArr.push(item)
                }
            })
        })
        console.log(resArr)
//
</script>

打印结果如下: 

本来想用filter加forEach实现的,思路有点混乱烂尾了

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: 如何从对象数组中筛选符合条件的值

本文链接: https://www.lsjlt.com/news/166548.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作