给你一个简单的做法(测试是用的WSH,在网页内也差不多):先看试验: var a = new Array("a","","","hello","","hi","good"); var b = a.join(",");WScript.Echo(b); var c = b.split(/,+/);WScript.echo(c);所以,要清空元素,可以这样(假设数组变量是a) a = a.join(",").split(/,+/);如果a的某个元素中可能含逗号,你可以把这个临时分隔符换成其它不可能出现的,比如|;.`等等。
L@_@K <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> new document </title> <meta name="generator" content="editplus" /> <meta name="author" content="Gao YiXiang" /> <meta name="email" content="[email protected]" /> <meta name="keywords" content="javascript dhtml dom" /> <meta name="description" content="I love web development." /> </head> <body> <script type="text/javascript"> <!-- var a = new Array(6); a[1] = "d"; a[2] = ""; a[3] = "e"; a[5] = null;alert("清理前:" + a);for (var i=a.length-1; i>=0; i--) { if (a[i]==undefined || a[i]==null || a[i]=="") { a.splice(i,1); } }alert("清理后:" + a); //--> </script> </body> </html>
var a = new Array("a","","","hello","","hi","good");
var b = a.join(",");WScript.Echo(b);
var c = b.split(/,+/);WScript.echo(c);所以,要清空元素,可以这样(假设数组变量是a)
a = a.join(",").split(/,+/);如果a的某个元素中可能含逗号,你可以把这个临时分隔符换成其它不可能出现的,比如|;.`等等。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </title>
<meta name="generator" content="editplus" />
<meta name="author" content="Gao YiXiang" />
<meta name="email" content="[email protected]" />
<meta name="keywords" content="javascript dhtml dom" />
<meta name="description" content="I love web development." />
</head>
<body>
<script type="text/javascript">
<!--
var a = new Array(6);
a[1] = "d";
a[2] = "";
a[3] = "e";
a[5] = null;alert("清理前:" + a);for (var i=a.length-1; i>=0; i--)
{
if (a[i]==undefined
|| a[i]==null
|| a[i]=="")
{
a.splice(i,1);
}
}alert("清理后:" + a); //-->
</script>
</body>
</html>