修复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教程学习
编程开发子分类