我的数组是:
array = [{
"name": "obj0_property0",
"url": "picture1"
}, {
"name": "obj1_property0",
"url": "picture1"
}, {
"name": "obj0_property1",
"url": "picture2"
}]
我想要在JavaScript中这样的输出:
array[{
"obj0": ["picture1","picture2"]
}, {
"obj1": ["picture1"]
}]
我想找到数组的键名obj0
,并obj1
和合并图像值
简单Array.prototype.reduce()
可以很容易地重新组合您的源数组:
const array = [{"name":"obj0_property0","url":"picture1"},{"name":"obj1_property0","url":"picture1"},{"name":"obj0_property1","url":"picture2"}],
result = array.reduce((r,{name,url}) => {
const [key] = name.split('_'),
match = r.find(item => key in item)
match ? match[key].push(url) : r.push({[key]:[url]})
return r
},[])
console.log(result)
.as-console-wrapper {min-height:100%;}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句