我需要根据现有常量 javascript 对象中的一些键选择创建一个数组
const EXISTING_CONSTANT_OBJECT = {
'fr': '10',
'es': '15'
'us': '10'
'uk': '7'
//and so on for many other iso country codes and UNPREDICTABLE key names
}
我需要能够创建一个数组(出于不变性原因,无需修改 EXISTING_CONSTANT_OBJECT
),所有键的值都等于 10
。
例如,预期的输出是
object_to_create_arr = ["fr","us"]
我尝试使用 reduce
但失败了。
注意:我可以使用 ES6 并且通常更喜欢它,因为它通常更简洁。
最佳答案
您可以使用Object.keys
和filter
const obj = { 'fr': '10','es': '15','us': '10','uk': '7'}
let final = Object.keys(obj).filter(key => +obj[key] === 10)
console.log(final)
这里+
是用来隐式转换成数字的,因为在严格相等的情况下'10'
和10是不一样的
关于javascript - 基于 JavaScript 对象的键创建一个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58208356/