zoukankan      html  css  js  c++  java
  • JS学习笔记(3)--json格式数据的添加,删除及排序方法

    这篇文章主要介绍了json格式数据的添加,删除及排序方法,结合实例形式分析了针对一维数组与二维数组的json格式数据进行增加、删除与排序的实现技巧,需要的朋友可以参考下
     

    本文实例讲述了json格式数据的添加,删除及排序方法。分享给大家供大家参考,具体如下:

    js数据格式和json数据格式,各有各的用处,就个人而言,json更好用一点,js自身的数组和对像限制比较多。

    以js的数组举例:

    var a = ['1'];
    a[5] = 52;
    a.length //这儿的结果是6,也就是说,中间的key会自动补全,而值呢,是undefined
    
    

    一、添加和删除

    1、一维数组

    test = {}; //空json对像
    test['firstname'] = "tank"; //添加二个元素
    test['lastname'] = "zhang";
    console.log(test); //查看
    delete test['lastname']; //删除json中的某个元素
    console.log(test);
    
    

    2、二维数组

    test1 = [{"name":"tank","total":"100"},{"name":"zhang","total":"23"},{"name":"hao","total":"325"}];
    add = {"name":"may"};
    test1.push(add); //添加一个元素
    console.log(test1);
    delete test1[2]; //删除一个元素
    console.log(test1);
    
    

    二、排序

    1、一维数组

    test = ["100","23","325"]; //定义个数组
    function sortNumber(a,b) //定义排序方法
    {
       return a - b
    }
    test1_sort=test.sort(sortNumber);
    console.log(test1_sort);
    
    

    2、二维数组

    test1 = [{"name":"tank","total":"100"},{"name":"zhang","total":"23"},{"name":"hao","total":"325"}];
    sort_by = function(field, reverse, primer){ //定义排序方法
      var key = primer ?
        function(x) {return primer(x[field])} :
        function(x) {return x[field]};
      reverse = [-1, 1][+!!reverse];
      return function (a, b) {
        return a = key(a), b = key(b), reverse * ((a > b) - (b > a));
       }
    }
    test1_sort=test1.sort(sort_by('total', true, parseInt)); //根据total,升序排
    console.log(test1_sort);
    test1_sort=test1.sort(sort_by('name', false, '')); //根据name,倒序排
    console.log(test1_sort);
    
    

    别看是小问题,但是如果长时间不用,也会生疏,或者忘了。

  • 相关阅读:
    使用NHibernate绑定页面数据时,出现"未能加载视图状态,正在向其中加载视图状态。。。。"的Bug
    以?替代参数配合扩展方法简化数据库操作的实践
    好代码并非一蹴而就读《代码整洁之道》
    C#中,数据处理层之数据库基类
    C#中,页面层之简易验证模块
    C#中,数据交互层参数替代方案(三)
    读《程序员成长路线图:从入门到优秀》
    unity3d 屏蔽右键选项弹窗
    unity3d与web进行交互
    unity3d 使用背景贴图
  • 原文地址:https://www.cnblogs.com/Jacklovely/p/6387156.html
Copyright © 2011-2022 走看看