var delkey = new Array();
        delkey[0] = "2";
        delkey[1] = "3";
        var arr = new Array();
        arr[0] = "1";
        arr[1] = "2";
        arr[2] = "7";
        arr[3] = "9";
        arr[4] = "3";        Array.prototype.del = function (n) {
            if (n < 0) return this;
            return this.slice(0, n).concat(this.slice(n + 1, this.length));
        }
        $(function () {
            for (var i = 0; i < arr.length; i++) {
                if (arr[i] == "2") {
                    arr = arr.del(i);
                }
            }
            alert(arr);
        })
 
用一个数组长度做for循环的终止变量,可是这个数组在for循环内length就已经改变了。怎么避免这种情况?请问