它';可以从Javascript中的对象属性创建新数组
我知道了它';可以从Javascript中的对象属性创建新数组,javascript,arrays,object,Javascript,Arrays,Object,我知道了 { content: "item1", img: urlImg1 }, { content: "item2", img: urlImg2 } 我需要输出这样的内容 newArray = [item1, urlImg1, item2, urlImg2] 谢谢 您可以使用原始阵列: const数组=[{ 内容:“项目1”, img:'urlImg1' }, { 内容:“项目2”, img:'urlImg2' } ]; const n
{
content: "item1",
img: urlImg1
},
{
content: "item2",
img: urlImg2
}
我需要输出这样的内容
newArray = [item1, urlImg1, item2, urlImg2]
谢谢 您可以使用原始阵列:
const数组=[{
内容:“项目1”,
img:'urlImg1'
},
{
内容:“项目2”,
img:'urlImg2'
}
];
const newArray=array.map(obj=>obj.content);
log(newArray)
考虑到输入是一个对象数组,您可以使用array.reduce
和Object.values
const data=[{content:“item1”,img:“urlImg1”},{content:“item2”,img:“urlImg2”}];
//使用“array.reduce”遍历对象数组`
常量值=数据。减少((res,obj)=>{
//使用`object.values'获取对象的值`
//然后展开并推送到累加器,即'res'数组
res.push(…对象值(obj));
返回res;
}, []);
console.log(值)代码>试试这个
const arr = [{
content: "item1",
img: 'urlImg1'
},
{
content: "item2",
img: 'urlImg2'
}
];
const mapToNewArray = (arr) => {
let newArray = [];
arr.forEach(a => {
newArray = newArray.concat(Object.values(a));
});
return newArray;
}
newArray = mapToNewArray(arr);
当前格式是对象数组吗?问这个问题是因为你没有把它们放在方括号里