js json解析并重组成二维数组
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js json解析并重组成二维数组相关的知识,希望对你有一定的参考价值。
原始json:arr = [a:1,a:2,a:3,b:5,b:7,b:10]
解析重组后:newArr = [[a:1,b:5],[a:2,b:7],[a:3,b:10]]
需要兼顾可扩展性,也就是说 arr数据也可能是这样的[a:1,a:2,a:3,a:4,b:5,b:7,b:10,b:12,c:"11",c:"22",c:"33",c:"44"],重组类似上面的newArr结构。
请问怎么样解析重组这样的格式?
是前端解析,不是后台。
var newArr = [];
arr.map(e=>Object.keys(e)[0]).filter((e,i,o)=>o.indexOf(e)===i).map(e=>
arr.filter((e1,i)=>Object.keys(e1)==e).forEach((e,i)=>
if(!newArr[i])newArr[i]=[];
newArr[i].push(e);
);
);
console.log(newArr); 参考技术A 用StringBuffer啊! StringBuffer sf=new StringBuffer();
sf.append('[');
sf.append(jsonData);
sf.append(']');
这样组合一下。当然前台js里面是不能用StringBuffer sf=new StringBuffer();的 你可以在后台直接就转成[ month:12, day:24, month:12, day:25 , month:12, day:31 ]样式的!这样的另一个好处就是前台只专注于处理前台本身的事情了。数据什么的后台全搞好了干干净净传前面去。
为啥js二维数组传给后台接收到的数据变成了字符串
参考技术A 自动转换成json字符串了,到后台再转回来就行了 参考技术B 也许前端转变称了json的格式,你看看是否启用了数据格式,比如ajax里面的datatype以上是关于js json解析并重组成二维数组的主要内容,如果未能解决你的问题,请参考以下文章