如果你不介意使用JavaScript 1.6(注:此代碼使用jQuery庫)
var testArray = new Array();
testArray[3]="qwerty";
testArray[7]="asdfgh";
testArray[13]="zxcvbn";
var testString = testArray.filter(function (item) { return item != undefined }).join();
$(function(){
$('#write').text(testString);
});
過濾器的原型:
if (!Array.prototype.filter)
{
Array.prototype.filter = function(fun /*, thisp */)
{
"use strict";
if (this === void 0 || this === null)
throw new TypeError();
var t = Object(this);
var len = t.length >>> 0;
if (typeof fun !== "function")
throw new TypeError();
var res = [];
var thisp = arguments[1];
for (var i = 0; i < len; i++)
{
if (i in t)
{
var val = t[i]; // in case fun mutates this
if (fun.call(thisp, val, i, t))
res.push(val);
}
}
return res;
};
}
使數組是什麼? – WarrenFaith 2011-01-21 14:12:38
他可能想重新排列陣列,從他的小提琴中判斷。 – 2011-01-21 14:15:59
@warren;在我的例子中,數組鍵是3,7,13。當我將它們序列化時,它變成了「,,, qwerty ,,,, asdfgh ,,,,,, zxcvbn」。我想要的是「qwerty,asdfgh,zxcvbn」。 – borayeris 2011-01-21 14:16:52