underscoreJs中pluck函数的源码解析

本文探讨了underscoreJS中的pluck函数,特别是在处理多层次JSON对象时的使用。pluck函数是map函数的简化版,用于获取对象数组的特定属性。通过分析源码,解释了pluck如何根据对象是单层还是多层结构进行操作,并提供了理解其工作原理的提示。
摘要由CSDN通过智能技术生成

9月份之后项目开始进入收尾期了,产品要上市,所以9月之后的两个月都在疯狂的改BUG。最近总算是基本结束了,只剩下扫尾的了。终于能静下心来好好研究技术了。最近遇到两个函数,分别是underscore中的where和pluck函数,在对多层次的Json对象中使用这两个函数时,出现了问题。

当时的json对象是这样的结构:

{A:1,
 B:2,
 C:{
    C1:1,
    C2:2,
 }
 D:4
};

先补充一下pluck函数的作用。undescore官网对它们的描述是这样的:

pluck_.pluck(list, propertyName) 
A convenient version of what is perhaps the most common use-case for map: extracting a list of property values.

var stooges = [{name: 'moe', age: 40}, {name: 'larry', age: 50}, {name: 'curly', age: 60}];
_.pluck(stooges, 'name');
=> ["moe", "larry", "curly"]

当时我需要在由如上结构的json对象中组成的数组对象去进行筛选。但是对于多层次的json对象我并不是很清楚,经过几番试验,终于明白了在这样的情况下如何去使用这两个函数。

var list = [{name:1,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值