lodash的2个数组对象操作

本文介绍如何从数组对象中根据属性名称获取值的方法,包括使用lodash库进行操作及原始方式实现。同时,展示了如何根据某个属性的值来筛选数组对象中的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

根据数组对象 下的属性名称 来返回相应 的值

数据格式如下

var data=[{test1:[...]},{test2:[...]},{test3:[...]},{test4:[...]},{test5:[...]}]
var key='test1';

对象的每个属性名称不是相同的,对应的值 是一个数组
方法1:将data初始化到lodash中,map相应的key,使用filter过滤 掉undefined的值,使用flatMap合并 数组结果,value()函数执行该链式

var res=_(data).map(key).filter().flatMap().value();

方法2:
使用find,传入相应 的判断条件 ,返回 对应 的object

var res=_.find(data,function(o){return o[key]!=undefined});

方法3:原始的方式,循环,判断 属性是否存在

for(var x in data){
    if(data[x][key]!=undefined){
        return data[x][tmp];
        break;
    }
}

根据数组对象的某个元素是的值 否为true,筛选出该对象 其他元素的数据

数据格式如下

var data=[{isSelect:true,code:'code1'},{isSelect:false,code:'code2'},{isSelect:false,code:'code3'},{isSelect:true,code:'code4'}...]

筛选出所有的isSelect为true的code值 ,使用逗号隔开

var selecteds = _.filter(data, {isSelect:true});
var res = _.map(selecteds, 'code').join(',');
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值