json格式数据的添加,删除及排序方法


Posted in Javascript onJanuary 21, 2016

本文实例讲述了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);

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

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
Extjs 4.x 得到form CheckBox 复选框的值
May 04 Javascript
使用typeof判断function是否存在于上下文
Aug 14 Javascript
jquery实现浮动的侧栏实例
Jun 25 Javascript
JS实现可展开折叠层的鼠标拖曳效果
Oct 09 Javascript
JS实现浏览器状态栏显示时间的方法
Oct 27 Javascript
实现非常简单的js双向数据绑定
Nov 06 Javascript
AngularJS中比较两个数组是否相同
Aug 24 Javascript
Vue.js动态添加、删除选题的实例代码
Sep 30 Javascript
详解Vue 普通对象数据更新与 file 对象数据更新
Apr 26 Javascript
3种vue组件的书写形式
Nov 29 Javascript
JS实现表单中点击小眼睛显示隐藏密码框中的密码
Apr 13 Javascript
viewer.js实现图片预览功能
Jun 24 Javascript
jquery及js实现动态加载js文件的方法
Jan 21 #Javascript
js console.log打印对像与数组用法详解
Jan 21 #Javascript
JS遍历数组及打印数组实例分析
Jan 21 #Javascript
js采用concat和sort将N个数组拼接起来的方法
Jan 21 #Javascript
如何用angularjs制作一个完整的表格
Jan 21 #Javascript
angularjs自定义ng-model标签的属性
Jan 21 #Javascript
angularjs在ng-repeat中使用ng-model遇到的问题
Jan 21 #Javascript
You might like
php新建文件自动编号的思路与实现
2011/06/27 PHP
关于php内存不够用的快速解决方法
2013/10/26 PHP
php查看当前Session的ID实例
2015/03/16 PHP
PHP页面间传递值和保持值的方法
2016/08/24 PHP
如何利用预加载优化Laravel Model查询详解
2017/08/11 PHP
php日志函数error_log用法实例分析
2019/09/23 PHP
大家未必知道的Js技巧收藏
2008/04/07 Javascript
Javascript:为input设置readOnly属性(示例讲解)
2013/12/25 Javascript
jQuery使用ajaxSubmit()提交表单示例
2014/04/04 Javascript
JavaScript从数组中删除指定值元素的方法
2015/03/18 Javascript
两种JS实现屏蔽鼠标右键的方法
2020/08/20 Javascript
jQuery简单绑定单个事件的方法示例
2017/06/10 jQuery
vue下拉菜单组件(含搜索)的实现代码
2018/11/25 Javascript
JS使用对象的defineProperty进行变量监控操作示例
2019/02/02 Javascript
微信小程序登录session的使用
2019/03/17 Javascript
Three.js中矩阵和向量的使用教程
2019/03/19 Javascript
JavaScript canvas绘制渐变颜色的矩形
2020/02/18 Javascript
JavaScript arguments.callee作用及替换方案详解
2020/09/02 Javascript
如何在JavaScript中等分数组的实现
2020/12/13 Javascript
[54:24]Optic vs TNC 2018国际邀请赛小组赛BO2 第二场
2018/08/18 DOTA
Python实现115网盘自动下载的方法
2014/09/30 Python
Python的collections模块中的OrderedDict有序字典
2016/07/07 Python
python实现机械分词之逆向最大匹配算法代码示例
2017/12/13 Python
Python字典的核心底层原理讲解
2019/01/24 Python
selenium+python截图不成功的解决方法
2019/01/30 Python
PyQt5笔记之弹出窗口大全
2019/06/20 Python
python3.7 使用pymssql往sqlserver插入数据的方法
2019/07/08 Python
Python多线程的退出控制实现
2020/08/10 Python
澳大利亚婴儿、幼儿和儿童在线设计师商店:Smooch Baby
2019/02/16 全球购物
大唐电信科技股份有限公司java工程师面试经历
2016/12/09 面试题
车间安全生产标语
2014/06/06 职场文书
食品安全演讲稿
2014/09/01 职场文书
党员应该树立反腐倡廉的坚定意识思想汇报
2014/09/12 职场文书
让生命充满爱观后感
2015/06/08 职场文书
MySQL CHAR和VARCHAR该如何选择
2021/05/31 MySQL
SpringBoot项目多数据源及mybatis 驼峰失效的问题解决方法
2022/07/07 Java/Android