javascript [Object]在我的对象里面而不是真实的数据

时间:2017-10-30 13:25:48

标签: javascript arrays ecmascript-6 javascript-objects

我有以下js代码https://repl.it/N0xy/0 我试图使用一些函数将一些对象推入现有对象:

mylist.push(createMyObject(item.name, item.school, item.teacher))

结果包含:

 { result: true, count: 1, items: [ [ [Object], [Object] ] ] }

而不是:

     { result: true, count: 1, items: [ { name: 'Jacky', school: 'high', teacher: 'good' },
  { name: 'Tom', school: 'college', teacher: 'bad' } ] }

我该如何解决这个问题? 感谢

3 个答案:

答案 0 :(得分:0)

你忘了在最后一句话中做obj.items = create();。其他一切似乎都很好。

您可能希望将第二行更改为:

obj.items = obj.items.concat(create());

或者[1.2038, 1.206]

答案 1 :(得分:0)

您将数组推送到obj.items而不是单独的项目。 create()返回一个数组。

试试这个:

create().forEach(function(item) {
   obj.items.push(item);
});

OR

let createdItems = create();
for(item of createdItems) {
    obj.items.push(item);
}

答案 2 :(得分:-1)

在最后的console.log中,将obj打包到JSON.stringify这样的电话:

console.log("print my obj: ",obj);