知識社群登入
擴充內建類別
by 蘇德宙, 2011-02-05 20:37, 人氣(1585)
// 盡量不要擴充內建型別的原型,缺點主要是難以維護,尤其別人使用時
Array.prototype.indexOf = function(obj) {
  var ret = -1;
  for (var i=0; i<this.length; i++)
    if (this[i] == obj) { ret = i; break; }
  return ret;
}
 
Array.prototype.contains = function(obj) {
  return (this.indexOf(obj) >= 0);
}
 
Array.prototype.append = function(obj, nodup) {
  nodup = nodup || false;  // default
  if (this.contains(obj) && nodup) return;
  this[this.length] = obj;
}
 
var num = [1, 2, 3, 4, 5];
num.append(6);