我試圖從一個數組中刪除某些項目,從陣列的JavaScript
Array.prototype.remove = function(from, to)
{
var rest = this.slice((to || from) + 1 || this.length);
this.length = from < 0 ? this.length + from : from;
return this.push.apply(this, rest);
};
var BOM = [0,1,0,1,0,1,1];
var IDLEN = BOM.length;
for(var i = 0; i < IDLEN ;++i)
{
if(BOM[i] == 1)
{
BOM.remove(i);
//IDLEN--;
}
}
結果
BOM = [0,0,0,1];
預期的結果中刪除產品
BOM = [0,0,0];
它的外觀像我做錯了什麼,請幫助我。
謝謝。
你至少可以說明它是如何工作?刪除的標準是什麼? – Joseph
什麼時候定義了你的IDLEN?另外,你的'remove'方法似乎對'Array.splice'很熟悉,你有沒有考慮用它來完成你想要的? – Passerby
對不起,編輯提問。 – Red