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 次 |
| 最近记录: |