Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何修改数组中的对象?_Javascript_Arrays_Object_Pug - Fatal编程技术网

Javascript 如何修改数组中的对象?

Javascript 如何修改数组中的对象?,javascript,arrays,object,pug,Javascript,Arrays,Object,Pug,所以我反对: [ RowDataPacket { id: 1, name: 'title', value: 'My title' }, RowDataPacket { id: 2, name: 'email', value: 'Some email' } ] 我想这样修改它: [ { title: 'My title' }, { email: 'Some email' } ] 我已经尝试通过以下方式对其进行修改: var data = ** First object on top **

所以我反对:

[ RowDataPacket { id: 1, name: 'title', value: 'My title' },
  RowDataPacket { id: 2, name: 'email', value: 'Some email' } ]
我想这样修改它:

[ { title: 'My title' }, { email: 'Some email' } ]
我已经尝试通过以下方式对其进行修改:

var data = ** First object on top **
var data2 = [];

for (let i = 0; i < data.length; i++) {
  data2.push({[data[i]['name']]: data[i]['value']});
}
但在帕格中循环,经过修改后,我得到的长度是未定义的

each item in data2
  p
    item.title
  p
    item.email

我做错了什么?

您将每个项目作为单独的对象推送。在您的循环中,项目要么有
标题
,要么有
电子邮件
。不是两者都有。在
数据
数组中是否总是有2项?如果是,为什么需要循环?如果没有,您将如何处理其他字段?
each item in data2
  p
    item.title
  p
    item.email