Javascript js-基于密钥的筛选出属性
我有一个Javascript js-基于密钥的筛选出属性,javascript,node.js,lambda,Javascript,Node.js,Lambda,我有一个js变量,比如: var mylist=[{item:'emp',pos:1},{age:21,name:'AA'}, {年龄:22岁,姓名:'BB'},],…] 在我的js脚本中,我阅读了 var out = (mylist[0].map(function(i, j){return i.age})) total = out.length // this has 3 --> ['', '21', '22'] 我如何过滤掉列表中的元素,只返回带有age关键字的元素,这样我的
js
变量,比如:
var mylist=[{item:'emp',pos:1},{age:21,name:'AA'},
{年龄:22岁,姓名:'BB'},],…]
在我的js
脚本中,我阅读了
var out = (mylist[0].map(function(i, j){return i.age}))
total = out.length // this has 3 --> ['', '21', '22']
我如何过滤掉列表中的元素,只返回带有age
关键字的元素,这样我的
总数为=['21','22']
我是新来的js
,所以不知道如何处理?lambda?函数添加条件或过滤/返回“干净”数据。您可以使用after删除那些未定义的值
var mylist=[[{item:'emp',pos:1},{age:21,name:'AA'},{age:22,name:'BB'}]];
var out=mylist[0].map(i=>i.age).filter(age=>age);
控制台。注销代码>那是js
?那是什么语言,scala?@Louds-是JavaScript。我正在使用ES6中介绍的。你也可以像在问题中那样使用常规函数。你应该先过滤然后映射,所以如果有没有AgeIt’s right@CodeManiac的条目,你需要在映射时循环使用较少的值。谢谢你指出这一点。我认为reduce()
在这里非常理想,因为这样我们只需要循环一次。