javascript / jquery将一个对象插入另一个对象

时间:2013-08-08 13:20:58

标签: javascript jquery

我有两个对象,我需要在第一行中插入另一个对象。

我找到了Javascript函数splice,但我不知道如何使用它。

我的代码:

$(document).ready(function() {
    var person = {};    
    person[0] = {};
    person[0]['name'] = 'Joy';
    person[0]['age'] = '12';

    var personAll = {}; 
    personAll[0] = {};
    personAll[0]['name'] = 'Vanda';
    personAll[0]['age'] = '49';
    personAll[1] = {};
    personAll[1]['name'] = 'Peter';
    personAll[1]['age'] = '12';

    var new_object = personAll.splice(0, person);

    //I need get this result:
    new_object[0]['name'] = 'Joy';
    new_object[0]['age'] = '12';
    new_object[1]['name'] = 'Vanda';
    new_object[1]['age'] = '49';
    new_object[2]['name'] = 'Peter';
    new_object[2]['age'] = '12';

    console.log(new_object);
});

如何修复此代码?

4 个答案:

答案 0 :(得分:0)

请参阅documentation

splice()也会删除要删除的项目数 你需要这样称呼它:

array.splice(startIndex, howManyToRemove, newItems...);

在这种情况下,您可能希望删除0个项目。


如果您在数组的开头插入,也可以简单地拨打unshift()

答案 1 :(得分:0)

我注意到你正在索引一个OBJ。拼接是通过数组完成的。我会制作一个对象数组,然后相应地拼接。

另请参阅:http://www.w3schools.com/jsref/jsref_splice.asp

答案 2 :(得分:0)

如果你创建person和personAll数组,你可以使用concat方法。

var new_object = person.concat(personAll);

答案 3 :(得分:0)

Splice方法从数组中删除元素 您需要使用concat方法,如下所示:

var person = {name: 'Joy', age: 12};
var persons = [{name: 'Vanda', age: 49}, {name: 'Peter', age: 12}];
var newPersons = [person].concat(persons);
console.log(newPersons);  

控制台输出将为:enter image description here