首页 > 网站 > WEB开发 > 正文

json 排序

2024-04-27 14:10:54
字体:
来源:转载
供稿:网友

json 排序

在了解json排序之前你需要了解一点排序的思想:最传统的排序方式:冒泡排序

  1. function pup(obj){//冒泡排序,每次外循环执行一次将得到最小的数
  2. for (var i = 0; i< obj.length; i++) {
  3. for(var j=i+1; j<obj.length;j++){
  4. if (obj[i]>obj[j]) {
  5. var temp=obj[i];
  6. obj[i]=obj[j];
  7. obj[j]=temp;
  8. };
  9. console.log(j);
  10. };
  11. };
  12. return obj;
  13. };
  1. function pup1(obj){ //冒泡排序,外循环每执行一次(得到最大的数),内循环减少一次
  2. for (var i = 0; i < obj.length; i++) {
  3. for (var j=0; j<obj.length-i; j++) {
  4. if (obj[j]>obj[j+1]) {
  5. var temp=obj[j];
  6. obj[j]=obj[j+1];
  7. obj[j+1]=temp;
  8. };
  9. };
  10. };
  11. return obj;
  12. };

还有就是我们js数组中的一个方法 sort();我之前写过sort排序的方法,可以看这个链接中的介绍:http://www.w3cfuns.com/blog-5463736-5404922.html学习完了各种排序思想,我们就来探讨一下json排序的异同点吧,

  1. function sortJson1(json,key){ // 借用数组中sort排序方法
  2. return json.sort(function(a,b){
  3. var x=a[key];
  4. var y=b[key];
  5. if (x>y) {
  6. return 1;
  7. }
  8. else{
  9. return -1;
  10. };
  11. });
  12. };
  13. function sortJson2(json,key){
  14. for(var j=1;j<json.length;j++){
  15. var temp=json[j],
  16. val=temp[key],
  17. i=j-1;
  18. while(i >=0 && json[i][key]>val){
  19. json[i+1] = json[i];
  20. i = i-1;
  21. }
  22. json[i+1] = temp;
  23. }
  24. return json;
  25. };
    1. function sortJson(json,key){ //借用传统的冒泡思想
    2. for (var i = 0; i < json.length; i++) {
    3. for (var j = 0; j < json.length-i; j++) {
    4. if (json[j][key]>json[j+1][key]) {
    5. var temp=json[j];
    6. json[j]=json[j+1];
    7. json[j+1]=temp;
    8. };
    9. };
    10. };
    11. return json;
    12. };

上一篇:JavaScript入门

下一篇:html5 canvas缩放变换

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表