我有一个 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();
}