不错的方法,做个记录.
比如我现在有一个对象{person:{"name":"goodman","age":18...}}
有一个数组 personList,其中元素是Person对象.
现在需要将这些对象按照age排序.调用下面的方法:
function(personList,'age','desc','num');
-------------------------------------------------------------------------------------------------------------------------
/**
* php:sorted object in array according to a object's field.
*
* @param array $List
* @param var $by sort filed
* @param var $order desc/asc
* @param var $type sort type(num/string)
* @return array
*/
function ArraySort(array $List, $by, $order='', $type='') {
if (empty($List))
return $List;
foreach ($List as $key => $row) {
// $sortby[$key] = $row[$by] ;
$sortby[$key] = $row->$by;
}
if ($order == "DESC") {
if ($type == "num") {
array_multisort($sortby, SORT_DESC, SORT_NUMERIC, $List);
} else {
array_multisort($sortby, SORT_DESC, SORT_STRING, $List);
}
} else {
if ($type == "num") {
array_multisort($sortby, SORT_ASC, SORT_NUMERIC, $List);
} else {
array_multisort($sortby, SORT_ASC, SORT_STRING, $List);
}
}
return $List;
}
分享到:
相关推荐
按所推荐的程序在IE下跑了下,的确,排序耗时很小。 代码如下: [removed] /* * 洗牌 */ function getRandomPlayCard(m){ var array1=new Array(m); for(var i=0;i<m;i++){ var rnd=Math.floor(Math.random()*(i+0...
js中包含一个类,该类的主要功能是:对对象数组进行多字段排序和汇总。调用方法类似: 1、排序 :new SPArraySortHelper(数据, 分组排序字段, 汇总字段).sort() 2、汇总:new SPArraySortHelper(数据, 分组排序字段,...
/**数组根据数组对象中的某个属性值进行排序的方法 * 使用例子:newArray.sort(sortByArr(['number'],false)) //表示根据number属性降序排列;若第二个参数不传递,默认表示升序排序 * @param attr 排序的属性 ['...
jsSort v0.0.5 jsSort是一种通用的排序方法,可以通过多个属性对对象数组进行排序。概述jsSort的公共API归结为一个名为sortByMultiple的方法。 此方法采用两个参数,每个参数都是数组。 sequence :要排序的数组。 ...
* 多字段排序示例:Utils.mySort(stoneArr, [["getItemQuality", SortType.OrderUp], ["getItemNum", SortType.OrderUp]]); */ public static mySort(arr: any[], field?: any, sortType = SortType.OrderUp): ...
vue中数组和对象的排序 1数组排序 <li v-for=a>{{a}} [removed] new Vue({ el:#app, data:{ arr:[1,4,5,2,3,44] },computed:{ arr1:function(){ return this.arr.sort(sortNum)//调用排序方法 }...
主要介绍了js 根据对象数组中的属性进行排序实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
单字段排序局限性较大,不能满足用户对数据的关注点变化的需求,而多字段排序就可以较好的弥补这个缺陷。 多字段排序,实现的方式从大的层面上可以分为后端实现和前端实现。 后端排序 后端实现排序可以在数据库层面...
JS实现:数组中的json对象,按某个字段来进行字母排序
给出提前排序的数组,jsonArray中字段根据数组顺序重新排序。
1.数组中已存在两个可直接用来重排序的方法:reverse()和sort()。 reverse()和sort()方法的返回值是经过排序后的数组。reverse()方法会反转数组项的顺序: var values=[1,2,3,4,5]; values.reverse(); ...
一.首先给大家介绍js中内置的 sort() 方法 此方法默认是按字母顺序对数组中的元素进行排序的,说得更精确点,是按照字符编码的顺序进行排序。 看如下例子: ... * @param array 要排序的json数组对象 * @param
主要介绍了JS sort方法基于数组对象属性值排序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
案例:创建一个博客网站typecho 基础 Java程序运行机制 数据类型 变量 变量作用域 常量final 变量的命名规范 运算符 for循环 增强for循环 break continue 练习 Java的方法 1、何谓方法 2、方法的定义 方法调用 练习...
如果要按照某一个属性来对这个对象数组进行升序或降序排序,那么就需要用Arrays.sort(),但是这个创建的类一定要继承Comparable这个接口并重写compareTo方法。代码如下: package 排序; import java.util.Arrays; ...
主要介绍了Python实现针对json中某个关键字段进行排序操作,涉及Python json数组排序及lambda表达式相关操作技巧,需要的朋友可以参考下
但是前端说将结果按某个属性分组,每组单独一个集合,集合第一个元素为该属性,第二个元素为该属性值相同的所有对象集合,由于是小白一个,这个数据整理也是花了点时间,这里整理一下处理方法。 1.利用JDK1.8的新...
允许对对象数组进行CRUD操作。 安装 npm install svelte-generic-crud-table --save-dev 州(主人): 用法 使用组件中的svelte-generic-crud-table进行显示,并根据需要编辑,更新和删除其内容。 只需包含下表中所...
Sifter是一个客户端和服务器端库(通过 ),用于按属性(或多个属性)对对象的数组和哈希进行文本搜索。 专为自动完成而设计。 该过程分为三个步骤:评分,过滤,排序。 支持díåcritîçs。 例如,如果搜索...