后端数据来了,前端如果用什么组件或者插件的时候,有时候需要对传过来的数据进行处理。比如,传过来的数据是这样的 {“a”:2,"b":3,"c":4,"d":5};
但是我们需要的这样的形式,[{"a":2},{"b":3},{"c":4},{"d":5}](echart的数据接口就是这样的结构 ),怎么来转化呢?
function serializeArray(result){ var objArr = []; $.each(result,function (value,name) { objArr.push({value:value,name:name}); }) //console.log(objArr); return objArr; };
就是这样简单,利用jq的each方法,当然,还有很多的方法,这里的each的方法,传入两个参数,一个是要处理的对象类型的数据result,另一个就是如何处理的函数,这里的name和value就是result的对象里面的 key和 value,这个方法,就会让 对象的属性和内容对应起来,塞入数组,重新组建成我们需要的样式: [{"a":2},{"b":3},{"c":4},{"d":5}]。函数封装好了,最后就是调用了,
var arr = {“a”:2,"b":3,"c":4,"d":5};
serializeArray(arr);//[{"a":2},{"b":3},{"c":4},{"d":5}] [object Object]
每日一句:最好的锻炼方式就是每天的重复和学习。
翻译:The best way to exercise is to repeat and learn something every day。