use*_*203 2 javascript arrays concatenation object
假设我有一个对象,它的值是这样的数组:
obj = {
'key1': [1,2],
'key2': [3,4],
'key3': [5,6],
}
Run Code Online (Sandbox Code Playgroud)
如何使用 concat 将对象的所有数组合并为一个数组。对象的键数当然是动态的,但它至少会有一个实例所需的输出是这样的:
[1,2,3,4,5,6]
Run Code Online (Sandbox Code Playgroud)
flat()
上Object.values()
应该做的工作:
const obj = {
key1: [1,2],
key2: [3,4],
key3: [5,6]
},
merged = Object.values(obj).flat()
console.log(merged)
Run Code Online (Sandbox Code Playgroud)
.as-console-wrapper{min-height:100%}
Run Code Online (Sandbox Code Playgroud)
如果是不吉利的,足以应付IE或边缘,可以回退到reduce()
了扁平化:
const obj = {
key1: [1,2],
key2: [3,4],
key3: [5,6]
},
merged = Object.keys(obj).reduce(function(r,k){
return r.concat(obj[k])
}, [])
console.log(merged)
Run Code Online (Sandbox Code Playgroud)
.as-console-wrapper{min-height:100%}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
90 次 |
最近记录: |