JS实现的JSON数组去重算法示例
2018-04-11 12:11
1011 查看
本文实例讲述了JS实现的JSON数组去重算法。分享给大家供大家参考,具体如下:
需求描述:去除JSON数组中paymode字段相同的项,并将paymoney累加。
paylist:[{paymode:'1',payname:"现金",paymoney:"20"}, {paymode:'2',payname:"支付宝",paymoney:"50"},{paymode:'1',payname:"现金",paymoney:"40"}]
function UniquePay(paylist){ var payArr = [paylist[0]]; for(var i = 1; i < paylist.length; i++){ var payItem = paylist[i]; var repeat = false; for (var j = 0; j < payArr.length; j++) { if (payItem.paymode == payArr[j].paymode) { payArr[j].paymoney = parseFloat(payArr[j].paymoney)+parseFloat(payItem.paymoney); repeat = true; break; } } if (!repeat) { payArr.push(payItem); } } return payArr; }
通用的JSON数组去重
/* * JSON数组去重 * @param: [array] json Array * @param: [string] 唯一的key名,根据此键名进行去重 */ function uniqueArray(array, key){ var result = [array[0]]; for(var i = 1; i < array.length; i++){ var item = array[i]; var repeat = false; for (var j = 0; j < result.length; j++) { if (item[key] == result[j][key]) { repeat = true; break; } } if (!repeat) { result.push(item); } } return result; }
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
更多关于JavaScript相关内容可查看本站专题:《JavaScript中json操作技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。
您可能感兴趣的文章:
相关文章推荐
- JS实现json对象数组按对象属性排序操作示例
- JS实现给json数组动态赋值的方法示例
- JS实现去除数组中重复json的方法示例
- JS实现键值对遍历json数组功能示例
- JS实现根据指定值删除数组中的元素操作示例
- JS实现的全排列组合算法示例
- json对象与数组以及转换成js对象的简单实现方法
- js与jQuery实现获取table中的数据并拼成json字符串操作示例
- js加载Json数组实现ajax加载动态页面数据
- json对象与数组以及转换成js对象的简单实现方法
- 用js把json数组转成树型数据结构的算法
- JS实现的数组全排列输出算法
- JS实现数组去重复值的方法示例
- js对象转json数组的简单实现案例
- JS实现将二维数组转为json格式字符串操作示例
- JS获取多维数组中相同键的值实现方法示例
- JS实现的随机排序功能算法示例
- js实现数组转换成json
- javascript数组&省市联动分别用js数组和JSON实现