-1

2 つのオブジェクトがあり、最初の行で 1 つのオブジェクトを別のオブジェクトに挿入する必要があります。

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

4 に答える 4

0

OBJ のインデックスを作成していることに気付きました。スプライシングは配列で行われます。オブジェクトの配列を作成し、それに応じてスプライスします。

参照: http://www.w3schools.com/jsref/jsref_splice.asp

于 2013-08-08T13:24:02.790 に答える
0

person および personAll 配列を作成する場合は、concat メソッドを使用できます。

var new_object = person.concat(personAll);
于 2013-08-08T13:24:21.973 に答える
0

ドキュメントを参照してください。

splice()削除するアイテムの数も取得します。
次のように呼び出す必要があります。

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

この場合、おそらく0項目を削除したいと思うでしょう。


配列の先頭に挿入する場合は、単に を呼び出すこともできますunshift()

于 2013-08-08T13:22:30.843 に答える