繁体   English   中英

用lodash链接pluck()和flatten()

[英]Chaining pluck() and flatten() with lodash

这可以,但我怎么能把它链起来?...

allWeeks = _.flatten(_.pluck(dates.months, 'weeks'))
allDays  = _.flatten(_.pluck(allWeeks, 'days'))

我试过了:

allDays = _.chain(dates.months).pluck('weeks').flatten().pluck('days').flatten()

还有这个:

allDays = _(dates.months).pluck('weeks').flatten().pluck('days').flatten()

我不会因为纯粹的尴尬而删除这个问题,而是在这里留下任何其他可怜的笨蛋的答案,想知道“为什么我的lodash连锁不起作用?!”:

你必须用.value()结束链

所以这:

allDays = _.chain(dates.months).pluck('weeks').flatten().pluck('days').flatten().value()

还有这个:

allDays = _(dates.months).pluck('weeks').flatten().pluck('days').flatten().value()

你必须知道,从Lodash 4.0.0开始,_.pluck()被_.map()取代,例如:

var objects = [{ 'a': 1 }, { 'a': 2 }];

// in 3.10.1
_.pluck(objects, 'a'); // → [1, 2]
_.map(objects, 'a'); // → [1, 2]

// in 4.0.0
_.map(objects, 'a'); // → [1, 2]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM