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”从可能的Followers 中删除,我怎样才能有效地做到这一点

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 回答