0

かなり紛らわしいタイトルを書いたかもしれませんが、私の質問はかなり単純です。

配列からアイテムを削除する効率的な方法を探しています。しかし、私の配列は文字列化された完全なオブジェクトです (私は Node.js でアプリを作成しており、 JSON.stringifyメソッドを使用しています)。したがって、私の配列は次のようになります。

"{\"userID\":\"15\",
  \"possibleFollowers\":[
      {\"followerID\":\"201\",\"friends\":716},
      {\"followerID\":\"202\",\"friends\":11887},
      {\"followerID\":\"203\",\"friends\":11887}],
  \"name\":\"John\",
  \"lon\":\"Doe\"}"

私の質問は Javascript (または Node) に関するものです。「followerID: 202」の possibleFollowers から を削除したい場合、どうすれば効率的に削除できますか?

4

4 に答える 4

3
var string = "…";

var obj = JSON.parse(string);
obj.possibleFollowers = obj.possibleFollowers.filter(function(fol) {
    return fol.followerID != "202";
});
string = JSON.stringify(obj);
于 2012-10-19T07:56:39.570 に答える
2
var data = "{\"userID\":\"15\",\"possibleFollowers\":[{\"followerID\":\"201\",\"friends\":716},{\"followerID\":\"202\",\"friends\":11887},{\"followerID\":\"203\",\"friends\":11887}],\"name\":\"John\",\"lon\":\"Doe\"}";

var dataObject = JSON.parse(data);
dataObject.possibleFollowers = dataObject.possibleFollowers.filter(function(follower) {
    return !(follower.followerID == "202");
});
data = JSON.stringify(dataObject);
于 2012-10-19T07:54:33.693 に答える
0

javascriptでは、spliceメソッドを使用して、インデックスによって配列要素を削除します。

見る :

http://www.roseindia.net/java/javascript-array/javascript-array-remove-index.shtml

于 2012-10-19T07:50:13.343 に答える
-1

「削除」を使用して削除してみてください

for (var i in possibleFollowers) {
    if (possibleFollowers[i]['followerId'] == '216') {
        delete possibleFollowers[i];
    }
}
于 2012-10-19T07:47:13.797 に答える