【问题标题】:how to delete null values in array of json objects如何删除json对象数组中的空值
【发布时间】:2019-12-16 18:31:26
【问题描述】:

我在以下结构中有 JSON 对象,

var i=[];

i={"details":"personal", "about":[null,{"Name":"prudhvi","age":"26"},

                                       {"Name":"siva","age":"28"}

]

}

在下面的对象中,如何删除那个空值?能否请您提供代码。

提前谢谢你...

【问题讨论】:

标签: javascript


【解决方案1】:

否则,如果你不知道数组中的位置,只需写:

i.about = i.about.filter(function(x){return x !== null});

ES6 语法

i.about = i.about.filter(x => x !== null);

更新摘要

根据@nnnnnn 评论更新。谢谢@nnnnnn。

希望对你有帮助

【讨论】:

  • 你不需要i.about = i.about.filter(...);吗? .filter() 创建一个新数组。 (但是 +1 因为.filter() 比我在回答中使用的带有.splice()for 循环更整洁。)
【解决方案2】:

首先,您没有“JSON 对象”,因为 there is no such thing。你拥有的是一个对象。

其次,注意分配i = []; 是没有意义的,当你在后面的行分配i = /*something else*/ 时。

无论如何,如果您知道null 值将始终是about 数组中的第一个元素,那么只需执行以下操作:

i.about.splice(0,1);

查找并删除任何和所有null 值,无论它们在about 数组中的任何位置:

for (var j = i.about.length - 1; j >= 0; j--)
    if (i.about[j] === null)
        i.about.splice(j, 1);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-01
    • 1970-01-01
    • 2017-05-18
    • 1970-01-01
    • 2021-11-17
    • 2021-12-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多