0

javascriptを使用して次の配列からユーザーID 2を削除するにはどうすればよいですか

{"maxPages":2,"data":[{"UserId":"1","UserName":peterparker,"}{"UserId":"2","UserName":spiderman,"}]}

最初に次のようなインデックスを取得することを考えていました: id = 2 row = myarray.data.UserId.indexOf(id)

次に、インデックスに基づいて行を削除します

4

4 に答える 4

2
var obj = {}; // ...your object

for ( var i = 0; i < obj.data.length ) {
    if ( obj.data[i].UserId == 2 ) {
        obj.data.splice(i, 1);
        break;
    }
}
于 2013-08-21T18:15:33.633 に答える
0

joellustigman のものは私にとってはうまくいきますが、i++ と "=" の代わりに "==" という 2 つの小さな文法修正があります。

var obj = {
"maxPages":2,
"data":[{
"UserId":"1",
"UserName":"peterparker"
},
{"UserId":"2",
"UserName":"spiderman"
}
]}

for ( var i = 0; i < obj.data.length; i++ ) {
    if ( obj.data[i].UserId == "2" ) {
        obj.data.splice(i, 1);
        break;
    }
}
于 2013-08-21T18:35:02.533 に答える
0

あなたはこれを行うことができます:

myarray.data = myarray.data.filter(function(item) {
  return item.UserId !== 2;
});
于 2013-08-21T18:39:48.773 に答える