繁体   English   中英

JS / jQuery:按数组过滤对象属性

[英]JS/jQuery: Filter object properties by array

让我们来看一个示例JS对象(又称“关联数组”):

var zoo = {
  monkey: { legs: 4, color: "black" },
  fish: { legs: 0, color: "yellow" },
  turtle: { legs: 4, color: "green" },
  emu: { legs: 2, color: "gray" },
};

现在,我想检索一个水生动物的嵌套对象(又名“子数组”)。 是否有标准的JS / jQuery构造或函数来按数组过滤对象属性(“按数组索引数组”),即类似:

var aquatic = zoo["fish", "turtle"];

结果显然应该是{ { legs: 0, color: "yellow" }, { legs: 4, color: "green" } }

还是for循环是这里最简单的解决方案?

您可以使用map()并返回对象数组。

 var zoo = { monkey: { legs: 4, color: "black" }, fish: { legs: 0, color: "yellow" }, turtle: { legs: 4, color: "green" }, emu: { legs: 2, color: "gray" }, }; var aquatic = ["fish", "turtle"]; var result = aquatic.map(e => zoo[e]); console.log(result) 

暂无
暂无

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

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