【问题标题】:delete null value from json [closed]从json中删除空值[关闭]
【发布时间】:2013-09-06 10:23:54
【问题描述】:

我正在处理 JSON,现在我创建了新问题,当我从 JSON 中删除一个项目时,它将删除该索引上的所有项目,之后在该位置插入 null 现在我的问题是我也想要索引那个 JSON 对象的

演示Here

在这个小提琴中,这些步骤如下(请按照这个步骤):

  1. 在购物车中添加商品
  2. 现在点击前往购物车。
  3. 现在点击删除按钮

生成一个警告框,查看 JSON 的第一个索引,它将显示为 null,我想从 JSON 中删除该索引

【问题讨论】:

  • 不应该只删除所有项目吗?

标签: javascript jquery html json


【解决方案1】:

试试这个就行了

objArray.splice(0,1);

【讨论】:

  • 如果你真的想删除数组的第一个元素而不留下空元素。
  • 我不只是想删除第一个项目,任何项目都将被删除取决于用户
  • 所以你想一次删除所有项目?
  • 不依赖于用户,如 1,2 或 3.. 而是一次一个
  • 所以每次点击删除都会删除一个对象?
【解决方案2】:

因为你使用的是数组而不是对象,所以要从数组中删除试试这个

 objArray.splice(0, 1);

工作fiddle

【讨论】:

    【解决方案3】:

    试试这个delete objArray[0]中删除[0]

    http://jsfiddle.net/LjgcK/24/

    编辑

    当我点击删除按钮时,它会显示 json。

    [{"id":1,"title":"ABC","image":"http://fiddle.jshell.net/LjgcK/24/img/HKP.jpg","description":"Example"}]
    

    【讨论】:

    • 在你的 jsfiddle 中不起作用
    • @Subhash 当我在警报中检查它时向我显示 json 数组。
    【解决方案4】:

    听起来您需要从数组中“shift”元素而不是删除它们。

    http://jsfiddle.net/LjgcK/25/

    $('#btnDelete').click(function () {
       objArray.shift();
        alert(JSON.stringify(objArray));
    });
    

    【讨论】:

    • 抱歉 shift 只从一端移除,如果我想移除第二个元素,那么我在做什么
    【解决方案5】:

    您可以只使用splice() 方法从数组中删除一个元素。

    【讨论】:

    • 拼接方法只交换值不删除
    猜你喜欢
    • 1970-01-01
    • 2017-06-01
    • 2012-09-03
    • 2021-08-27
    • 1970-01-01
    • 2016-08-29
    • 1970-01-01
    • 2018-01-11
    • 1970-01-01
    相关资源
    最近更新 更多