簡體   English   中英

Array.Splice原型

[英]Array.Splice prototype

我有一個addAfter和addBefore函數,它將新元素添加到數組中。 這個數組是我的其他功能使用的存儲。 基本上,我存儲定義表單元格的低級對象。 將元素添加到數組后,我必須在表行中插入元素的html屬性值。

有沒有一種方法可以對我的數組進行原型處理以處理這兩個操作,而不必每次都使addAfter或addBefore倍增工作量,而又不會弄亂本機數組的原型?

var bays=[];

 addAfter: function (b, n) {
            for (var i = 0, ii, len = bays.length; i < len; i++) {
                ii = i + 1; if (ii == n) {
                    bays.splice(ii, 0, b);
                    var newCell = canvsTrBay.insertCell(ii);
                    newCell.outerHTML = b._html;
                };
            };
            this.build();
        }

是否可以做類似的事情:

   bays.prototype.add=function(b,n,isAfter){

       for (var i = 0, ii, len = bays.length; i < len; i++) {
                    ii =(isAfter? (i + 1):(n>0?i-1:0); 
                     if (ii == n) {
                        bays.splice(ii, 0, b);
                        var newCell = canvsTrBay.insertCell(ii);
                        newCell.outerHTML = b._html;
                    };
                };
                this.build();
    }

您可以將其直接添加到對象本身:

bays.add = ...;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM