json排序 摘自百度

var sortBy = function (filed, rev, primer) {
    rev = (rev) ? -1 : 1;
    return function (a, b) {
        a = a[filed];
        b = b[filed];
        if (typeof (primer) != ‘undefined‘) {
            a = primer(a);
            b = primer(b);
        }
        if (a < b) { return rev * -1; }
        if (a > b) { return rev * 1; }
        return 1;
    }
};
var obj = [
    {b: ‘3‘, c: ‘c‘},
    {b: ‘1‘, c: ‘a‘},
    {b: ‘2‘, c: ‘b‘}
];
1、数字排序

复制代码 代码如下:

obj.sort(sortBy(‘b‘, false, parseInt));
console.log(obj);

2、字符串排序

复制代码 代码如下:

obj.sort(sortBy(‘b‘, false, String));
console.log(obj);

二、JSON排序例子2

复制代码 代码如下:

var willSort = [
    {
        name:‘shangwenhe‘,
        age:25,
        height:170
    },
    {
        name:‘zhangsan‘,
        age:31,
        height:169
    },
    {
        name:‘lisi‘,
        age:31,
        height:167
    },
    {
        name:‘zhaowu‘,
        age:22,
        height:160
    },
    {
        name:‘wangliu‘,
        age:23,
        height:159
    }
];

/*
    @function     JsonSort 对json排序
    @param        json     用来排序的json
    @param        key      排序的键值
*/
function JsonSort(json,key){
    //console.log(json);
    for(var j=1,jl=json.length;j < jl;j++){
        var temp = json[j],
            val  = temp[key],
            i    = j-1;
        while(i >=0 && json[i][key]>val){
            json[i+1] = json[i];
            i = i-1;   
        }
        json[i+1] = temp;

}
    //console.log(json);
    return json;

}
var json = JsonSort(willSort,‘age‘);
console.log(json);

三、JSON排序例子3

复制代码 代码如下:

var people = [
{
    name: ‘a75‘,
    item1: false,
    item2: false
},
{
    name: ‘z32‘,
    item1: true,
    item2: false
},
{
    name: ‘e77‘,
    item1: false,
    item2: false
}];

function sortByKey(array, key) {
    return array.sort(function(a, b) {
        var x = a[key]; var y = b[key];
        return ((x < y) ? -1 : ((x > y) ? 1 : 0));
    });
}

people = sortByKey(people, ‘name‘);

时间: 2024-10-15 03:03:16

json排序 摘自百度的相关文章

数组-去重、排序方法、json排序

1.数组去重 /*方法一: 1,'1' 会被认为是相同的; 所有hash对象,如:{x;1},{y:1}会被认为是相同的 //10ms */ Array.prototype.unique=function(){ var newArr=[],obj={}; for(var i=0,len=this.length;i<len;i++){ if(!obj[this[i]]){ newArr.push(this[i]); obj[this[i]]=true; } } return newArr; } /

json排序

1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <meta name="author" content="" /> 6 <meta name="copyright" content="" /> 7 <title></title> 8 &

JavaScript中根据key的value对json排序

/** * 获取table表格的数据项. */ function getTableData(tableId){ var data = "{"; //定义数据变量 $("#" + tableId).find("input, select").each(function(){ //遍历表格中的input.select等标签 if($(this).attr("id")){ //如果此标签设置了id,则取出其中数据 data += &

介绍 JSON(摘自网络)

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等). 这些特性使J

什么是NoSql(摘自百度百科)

来源地址:https://baike.baidu.com/item/NoSQL/8828247?fr=aladdin NoSQL,泛指非关系型的数据库.随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展.NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题. NoSQL(NoS

查询,删除,修改加Json排序

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes" /> <title>

Autosar事件机制——摘自百度文库

摘自https://wenku.baidu.com/view/19b75a8ff18583d04864591b.html,感谢原作者! AUTOSAR事件机制 作者:邓孔宏 1.1 事件 事件是由操作系统管理的对象.事件机制只提供给拓展的任务,它开始任务到waiting和去到waiting状态的转换,是一种同步的方法. 每个任务有一个确切数量的事件集.这个任务被称作那些事件的所有者.一个个别的事件被识别通过它的所有者和它的名称(或掩码).事件可以被用来传达二进制信息到(事件分配到的)拓展的任务.

jquery json实现面向对象 百度十二星座

效果: 源码: index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>百度星座</title> <style type="text/css"> *{ margin: 0; padding: 0; } .clearfix:after{ content: &qu

java程序员面试----交流项目经验(摘自百度)

1:请你介绍一下你自己这是面试官常问的问题. 2:说说你的家庭面试时询问家庭问题不是非要知道求职者家庭情况,探究隐私,而是要了解家庭背景对求职者的塑造和影响.面试官希望听到的重点也在于家庭对求职者的积极影响. 3:说说你的最大优缺点这个问题的概率很大,面试官喜欢求职者从自己的优点说起,中间加一些小缺点,最后再把问题转回到优点上,突出优点的部分. 4:就你申请的这个职位,你认为你还缺什么?面试官喜欢问求职者的弱点,但精明的求职者一般不直接回答.他们希望看到这样的求职者:继续重复自己的优势,然后说: