`

json对象数组按对象属性排序

    博客分类:
  • Json
阅读更多
var array = [
    {name: 'a', phone: 1, value: 'val_4'},
    {name: 'b', phone: 5, value: 'val_3'},
    {name: 'd', phone: 3, value: 'val_2'},
    {name: 'c', phone: 4, value: 'val_1'}
]
array.sort(getSortFun('desc', 'phone'));
function getSortFun(order, sortBy) {
    var ordAlpah = (order == 'asc') ? '>' : '<';
    var sortFun = new Function('a', 'b', 'return a.' + sortBy + ordAlpah + 'b.' + sortBy + '?1:-1');
    return sortFun;
}

alert(JSON.stringify(array));

数组本身有sort方法,可以指定排序函数,因此可以动态生成一个排序函数来完成对按指定对象属性排序的需求;

 

注意:sort后原数组序列会发生变化!!

分享到:
评论

相关推荐

    JS实现json对象数组按对象属性排序操作示例

    本文实例讲述了JS实现json对象数组按对象属性排序操作。分享给大家供大家参考,具体如下: 在实际工作经常会出现这样一个问题:后台返回一个数组中有i个json数据,需要我们根据json中某一项进行数组的排序。 例如...

    javascript json对象数组排序

    javascript中实现对象数组的排序功能 只要数组中的对象存在多个属性,即可传入sql语句排序形式的参数,加以排序,如传入'col1 desc,col2 asc' 就可以实现对数组中对象通过col1倒序排列,如果col1值相同,则通过col2排序,...

    JS实现json数组排序操作实例分析

    本文实例讲述了JS实现json数组排序操作。分享给大家供大家参考,具体... * json对象数组按照某个属性排序:降序排列 * @param {Object} propertyName */ function compareDesc(propertyName) { return function(obje

    JS根据json数组多个字段排序及json数组常用操作

    /**数组根据数组对象中的某个属性值进行排序的方法 * 使用例子:newArray.sort(sortByArr(['number'],false)) //表示根据number属性降序排列;若第二个参数不传递,默认表示升序排序 * @param attr 排序的属性 ['...

    JS实现根据数组对象的某一属性排序操作示例

    主要介绍了JS实现根据数组对象的某一属性排序操作,涉及javascript针对json数组的遍历、比较、排序等相关操作技巧,需要的朋友可以参考下

    JS判断两个数组或对象是否相同的方法示例

    要判断2个数组是否相同,首先要把数组进行排序,然后转换成字符串进行比较。 JSON.stringify([1,2,3].sort()) === JSON.stringify([3,2,1].sort()); //true 或者 [1,2,3].sort().toString() === [3,2,1].sort()....

    常用js方法,当前方法数量为15个,持续更新中

    【2】无序对象根据key从小到大转换成有序数组对象 【3】通过key遍历对象,并通过最小属性和最大属性,获取COG统计信息中的最小最大值 【4】获取对象中的所有key数组 【5】判断对象是否存在某一属性 【6】通过对象key...

    method-names:从一个对象的所有可枚举属性中返回一个函数属性名称数组,拥有的和继承的

    :轻松生成具有函数值的对象的所有可枚举属性(拥有和继承)的属性名称的 JSON 或降价列表(排序数组)。 运行测试 安装开发依赖项。 npm i -d && npm test 贡献 拉取请求和星星总是受欢迎的。 对于错误和功能请求...

    如何高效率去掉js数组中的重复项

    方式一: 常规模式 1.构建一个新的临时数组存放结果 2.for循环中每次从原数组中取出一个元素,用这个元素循环与...推荐&gt;利用json对象是否有属性值 1.创建一个新的数组存放结果 2.创建一个空对象json 3.for循环时,每次

    go-jsonschema:Go中的JSON模式解析器和工具

    New ( jsonString )}支持 ID验证关键字按实例类型排序5.1。 数字实例的验证关键字(数字和整数) 多重 最大 独家最高 最低限度 独家最低5.2。 字符串的验证关键字 最长长度 最小长度 图案5.3。 数组的验证关键字 ...

    json-lite:适用于Chrome和Firefox的快速无阻塞JSON查看器

    可折叠数组,对象和长值 使用Ctrl(Command)折叠所有子项,然后单击 使用Alt(Option)+单击还可以折叠所有同级项目上的属性 计算集合中的项目和属性 显示集合大小 尽力显示大(10MB以上)JSON文件 尽力显示无效的...

    JSON Lite-crx插件

    功能: - 格式化JSON / JSONP响应和剪贴板 - 在每个页面上选择和格式化/编码/解码文本 - 可折叠数组,对象和长值 - 用Ctrl(命令)折叠所有童装+点击 - 折叠性能也与ALT(选项)+点击 - 计算集合中的项目和属性 - ...

    easyui帮助手册datagrid

    columns(列) array(数组) 数据表格列配置对象,查看列属性以获取更多细节。 null frozenColumns(固定列) array(数组) 跟列属性一样,但是这些列固定在左边,不会滚动。 null fitColumns(自适应列宽) ...

    JQuery权威指南源代码

    使用jQuery表单对象属性过滤选择器 使用jQuery表单过滤选择器 第3章 DOM树状文档 获取元素的属性 设置元素的属性 设置元素的属性 获取或设置元素的内容 获取或设置元素的值 直接设置元素样式值 增加CSS类别...

    bencoding:Bittorent协议使用的Bencoded数据的序列化和反序列化

    Bencode与JSON非常相似:它具有字典(JSON对象),列表(JSON数组),字符串和整数。 但是,bencode有一些优点: 紧凑性:任何值之间都没有空格,也没有列表,字典,其他任何地方。 字典总是按字母顺序按字典顺序...

    ActionScript开发人员指南中文版

    HTMLLoader对象的显示属性 滚动HTML内容 访问HTML历史记录列表 设置在加载HTML内容时使用的用户代理 设置用于HTML内容的字符编码 为HTML内容定义类似于浏览器的用户界面 创建HTMLLoader类的子类 第章:处理AIR中与...

    史上最全韩顺平传智播客PHP就业班视频,10月份全集

    10-26 3 子元素选择器 表单对象属性选择器 10-26 4 jquery对象集合遍历的四种形式及练习题讲解 jquery的dom操作 10-27 1课程回顾 10-27 2 jquery的dom操作 内部插入 外部插入 10-27 3 jquery节点操作 10-27 4 练习题...

Global site tag (gtag.js) - Google Analytics