手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >javascript对JSON数据排序的3个例子
javascript对JSON数据排序的3个例子
摘要:一、适用于数字排序和字幕排序json的排序方法有很多种,这是其中最简单的一种方法。复制代码代码如下:varsortBy=function(f...

一、适用于数字排序和字幕排序

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');

PS:关于json操作,这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:

http://tools.jb51.net/code/json

JSON在线格式化工具:

http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:

http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:

http://tools.jb51.net/code/jsoncodeformat

在线json压缩/转义工具:

http://tools.jb51.net/code/json_yasuo_trans

C语言风格/HTML/CSS/json代码格式化美化工具:

http://tools.jb51.net/code/ccode_html_css_json

【javascript对JSON数据排序的3个例子】相关文章:

javascript实现炫酷的拖动分页

JavaScript数据结构与算法之集合(Set)

JavaScript对表格或元素按文本,数字或日期排序的方法

javascript实现简单的进度条

JavaScript中strike()方法的使用介绍

javascript动态创建链接的方法

javascript的函数第1/3页

JavaScript数据结构与算法之链表

javascript基于DOM实现权限选择实例分析

JavaScript每天定时更换皮肤样式的方法

精品推荐
分类导航