怎样删除js数组中的undefined?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样删除js数组中的undefined?相关的知识,希望对你有一定的参考价值。

在使用一个js数组的时候 有时候会出现一个undefined 怎么把这项删除?

参考技术A 思路
方法一:如果数组中的元素有意义的是非零或者非空,则可以根据if(!a[i])的方式进行判断
方法二:比较通用的判断undefined是使用typeof的方式,判断是不是等于字符串undefined
代码
var a=[];
a[5]=7;
var b = [];//去除undefined后的结果
for(var i=0;i<a.length;i++)
if(typeof(a[i])!='undefined')
b.push(a[i]);

参考技术B

如果怀的是女孩的话,以上症状就不会太明显呵。不过这也就只是一种推测手段。你也可以自己了解

百度搜索 :宫胎宝 希望对你有帮助
参考技术C 初始化数组的时候设成空值。

js,求大神指导 怎么删除数组型json里不符合条件的元素

var a=[id:1,name:'三',flag:1,id:2,name:'张',flag:undefined,id:3,name:undefined,flag:1]
若a中的元素里面有undefined的就去掉这个元素
变成
var a=[id:1,name:'三',flag:1,id:2,name:'张',id:3,flag:1]
写错了 需求是这样的 不好意思

谢谢哈 ,能不能按照下面的帮忙改下
var a=["id":"4","flag":1,"id":"3","id":"2"];,有的里面没有flag
var h= $.parseJSON(a); parse(h);
function parse(json)
var result = [], setBody = $.map(json, function(item)
return "get" : [ "id" : item.id,"flag" : item.flag, ] ; );
return result;
正常情况是返回:[ id : 4,flag:1, id :3, flag: undefined, id :2, flag: undefined ] 怎么样当.不存在的时候就不取返回[ id : 4,flag:1, id :3, id :2 ]

<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<meta name="keywords" content="白菜编辑部">
<title>白菜编辑部</title>
<style type="text/css">
</style>
<script type="text/javascript">
var array = [
            
                id : 1,
                name : '三',
                flag : 1
            ,
            
                id : 2,
                name : '张',
                flag : undefined
            ,
            
                id : 3,
                name : undefined,
                flag : 1
            
    ];
    
    var result = [];
    for ( var i = 0; i < array.length; i++)
    
    var o = ;
    var obj = array[i];
    for ( var p in obj)
    
    if (typeof obj[p] !== 'undefined')
    
    o[p] = obj[p];
    
    
    result.push (o);
    
    
    console.log (result);
</script>
</head>
<body>
</body>
</html>

参考技术A for(var i in a)
     for(var k in a[i])
     !a[i][k] && delete a[i][k];
    
    console.info(a);

 这个就可以满足你的需求啊。你自己试试!

我不管你里边有什么属性,只要有undefined类型,直接干掉

参考技术B var a=["id":"4","flag":1,"id":"3","id":"2"];,有的里面没有flag
var h= $.parseJSON(a); parse(h);
function parse(json)
var result = [], setBody = $.map(json, function(item)
if(typeof item.flag == 'undefined')
return "get" : [ "id" : item.id] ;
return "get" : [ "id" : item.id,"flag" : item.flag ] ;
);
return result;

以上是关于怎样删除js数组中的undefined?的主要内容,如果未能解决你的问题,请参考以下文章

js删除数组中的元素

js删除数组中的元素delete和splice的区别

js删除数组中的元素delete和splice的区别

js找数组中元素5种方式

js数组元素怎样删除最后一个元素

js,求大神指导 怎么删除数组型json里不符合条件的元素