如何从json数据中删除任何项目?

时间:2015-08-27 13:25:02

标签: javascript json

我的下面代码无效。我想从我的json中删除任何项目。我无法做到这一点。

如何从json中删除任何项目?

  var Messages = {};
Messages.data = [{
    id: "1",
    message: "Message 1"
}, {
    id: "2",
    message: "Message 2"
}, {
    id: "3",
    message: "Message 3"
}, {
    id: "4",
    message: "Message 4"
}];

deleteItem("Message 3");
console.log(Messages.data);
function deleteItem(index) {
    var i=0;
    for(var prop in Messages.data){
       if(index===Messages.data[i].message){
         Messages.data.splice(Messages.data[i], i);
      }

      i++;
    }

}

2 个答案:

答案 0 :(得分:4)

试试这个:

<j> <l> <n> "jd".
  

当我们拼接元素时,你需要打破循环,数组的长度减少1

答案 1 :(得分:1)

此行不正确:

Messages.data.splice(Messages.data[i], i);

splice的第一个参数应该是要开始删除的数组的索引,第二个参数是要删除的项目数。因此,您的代码应该是

Messages.data.splice(i, 1);

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/splice