2

このjavascriptオブジェクト配列があるとしましょう。

[{a:'a', b:2, c:true}, {a:'b', b:3, c:true}, {a:'a1', b:3, false}]

オブジェクトをインデックス0から2に移動する必要があるとしましょう。この関数を試しましたが、うまくいきませんでした。

   Array.prototype.move = function (old_index, new_index) {
    if (new_index >= this.length) {
        var k = new_index - this.length;
        while ((k--) + 1) {
            this.push(undefined);
        }
    }
    this.splice(new_index, 0, this.splice(old_index, 1)[0]);
  };
4

1 に答える 1

3

オブジェクト配列が正しくありません。最後の項目に「c」変数が必要です。

[{a:'a', b:2, c:true}, {a:'b', b:3, c:true}, {a:'a1', b:3, c:false}];

実例: http: //jsfiddle.net/WgLKc/1/

于 2013-01-17T11:36:23.277 に答える