【发布时间】:2017-06-13 00:46:59
【问题描述】:
基本上,我的 JavaScript 数组看起来像这样:
var keyFilters = ["key_1", "key_2", "key_3"];
我有一个看起来像这样的对象:
myObject["key_1"] = "Value 1";
myObject["key_2"] = "Value 2";
myObject["key_random"] = "Value 2";
我需要将我的myObject 对象配对,使其仅具有keyFilters 数组中存在的键。有时,对象不会有过滤器中存在的键。在此示例中,针对 keyFilters 过滤 myObject 将产生以下输出对象:
myObject = {
"key_1": "Value 1",
"key_2": "Value 2",
}
我知道 JS 中没有用于对象的 map 函数,但有一个用于数组的函数。最好使用它还是只编写一个单独的函数来遍历数组然后遍历对象,然后推送到一个只有匹配键的新对象,还是有一些更巧妙的方法?
【问题讨论】:
-
您对创建新对象的函数的建议很好(并且可能是最好的方法)。
-
谢谢。这可能是一种被误导的想法,但我想尽我所能减少我继承的这个过于复杂的前端 JS 应用程序的内存使用,包括在我可以配对已经实例化的对象时不引入新对象。跨度>
-
这能回答你的问题吗? Filter object properties by key in ES6
标签: javascript arrays object iteration