修复IE9&safari 的sort方法_Javascript教程-查字典教程网
修复IE9&safari 的sort方法
修复IE9&safari 的sort方法
发布时间:2016-12-30 来源:查字典编辑
摘要:当前版本v0.2v0.1修复IE9--Array.prototype.sort不能根据对象属性做排序的遗憾v0.2修复safari不支持函数...

当前版本 v0.2

v0.1 修复IE9-- Array.prototype.sort 不能根据 对象属性 做排序的遗憾

v0.2 修复safari 不支持函数参数

复制代码 代码如下:

!function(window){

var ua = window.navigator.userAgent.toLowerCase(),

reg = /msie|applewebkit.+safari/;

if(reg.test(ua)){

var _sort = Array.prototype.sort;

Array.prototype.sort = function(fn){

if(!!fn && typeof fn === 'function'){

if(this.length < 2) return this;

var i = 0, j = i + 1, l = this.length, tmp, r = false, t = 0;

for(; i < l; i++){

for(j = i + 1; j < l; j++){

t = fn.call(this, this[i], this[j]);

r = (typeof t === 'number' ? t :

!!t ? 1 : 0) > 0

? true : false;

if(r){

tmp = this[i];

this[i] = this[j];

this[j] = tmp;

}

}

}

return this;

}else{

return _sort.call(this);

}

};

}

}(window);

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类