js数组去重 扩展js对象数组的OrderByAsc和OrderByDesc方法
扩展js对象数组的OrderByAsc和OrderByDesc方法
看了一段时间关于js原型的知识 js的扩展方法是基于原型的 如Array prototype XXXX就是给Array扩展XXX方法 然后数组都能使用这个方法了
在对象数组里面经常有根据属性来进行排序的 升序 降序的 于是自己就想写一个类似于C#里面的orderBy的方法 代码如下
代码如下:
Array prototype OrderByAsc = function (func) {
var m = {};
for (var i = ; i < this length; i++) {
for (var k = ; k < this length; k++) {
if (func(this[i]) < func(this[k])) {
m = this[k];
this[k] = this[i];
this[i] = m;
}
}
}
return this;
}
Array prototype OrderByDesc = function (func) {
var m = {};
for (var i = ; i < this length; i++) {
for (var k = ; k < this length; k++) {
if (func(this[i]) > func(this[k])) {
m = this[k];
this[k] = this[i];
this[i] = m;
}
}

}
return this;
}
调用的方法如下
代码如下:
var arr = [{ name: aaa grade: } { name: ccc grade: } { name: bbb grade: }];
var orderArr = arr OrderByDesc(function (a) {
return a grade;
});
然后输出一下 看一下结果吧
代码如下:
for (var i = ; i < orderArr length; i++) {
document write(orderArr[i] name);
lishixinzhi/Article/program/Java/JSP/201311/19823相关文章
- 函致什么意思 js定义两个函式,它们的功能分别是求出任意五个数中的最大值和最小值
- js根据数组对象中的一个值排序 C#数组排序与对象大小比较
- 类的具体实例 js判断输入是否为数字的具体实例
- js object object(一些相关的变数和方法的软体集)详细资料大全
- 快速排序方法过程 JS实现随机化快速排序的实例代码
- 表单登录css样式 js控制表单奇偶行样式的简单方法
- js选中select的某一个 Jquery 两个select多选控件中项的移动
- js实现foreach方法 Smarty foreach控制循环次数的实现详解
- js遍历json数组 js Map List 遍历使用示例
- js声明对象 js确定对象类型的方法
爱学记

微信收款码
支付宝收款码