1. 程式人生 > >【HAVENT原創】讓 IE6 ~ IE8 瀏覽器也支援 map 和 filter 方法

【HAVENT原創】讓 IE6 ~ IE8 瀏覽器也支援 map 和 filter 方法

開發十年,就只剩下這套架構體系了! >>>   

Array.prototype 擴充套件可以讓 IE6 ~ IE8 瀏覽器也支援 map 的方法:

if (typeof Array.prototype.map != "function") {
  Array.prototype.map = function (fn, context) {
    var arr = [];
    if (typeof fn === "function") {
      for (var k = 0, length = this.length; k < length; k++) {      
         arr.push(fn.call(context, this[k], k, this));
      }
    }
    return arr;
  };
}

讓 IE6 ~ IE8 瀏覽器也支援 filter 的方法:

if (typeof Array.prototype.filter != "function") {
  Array.prototype.filter = function (fn, context) {
    var arr = [];
    if (typeof fn === "function") {
       for (var k = 0, length = this.length; k < length; k++) {
          fn.call(context, this[k], k, this) && arr.push(this[k]);
       }
    }
    return arr;
  };
}