js中怎么去掉数组的空值,不知道是第几个,只要是空值就删除

JavaScript023

js中怎么去掉数组的空值,不知道是第几个,只要是空值就删除,第1张

不知道这个效果是否达到要求: <script language="javascript">

 var array = [1,2,,,4,6,,,,,,55]

 

 alert(array)

 for(var i = 0 i<array.lengthi++)

 {

             if(array[i] == "" || typeof(array[i]) == "undefined")

             {

                      array.splice(i,1)

                      i= i-1

                 

             }

             

 }

 

 alert(array)

</script>

去掉空格的本质就是将字符串中的空字符串删除,根据这个解决思路,我们有多种解决方法。

方法一:遍历法。遍历字符串中的字符保留有效字符

function trim(str){

    var i

    var rst = ''

    for(i=0i<str.lengthi++){

        var c = str.charAt(i)

        if(c!==" "){

            rst = rst + c

        }

    }

    return rst

}

var testStr = " te s t  "

testStr = trim(testStr)

console.log(testStr )

//test

方法二:利用数组。利用数组特性简化代码

function trim(str){

    var chars = str.split(" ")

    return chars.join('')

}

var testStr = " te s t  "

testStr = trim(testStr)

console.log(testStr )

//test

方法三:递归法。利用正则表达式递归去除空格符

function trim(str) {

  return str.replace(/(^\s+)|(\s+$)/g, "")

}

var testStr = " te s t  "

testStr = trim(testStr)

console.log(testStr )

//test

方法四:利用jquery.js。如果你使用jquery,可以使用jquery里的trim函数

var testStr = " te s t  "

testStr = $.trim(testStr)

console.log(testStr )

//test