因为项目前后端分离,前端需要获取后端传过来的json数据,并显示到页面上,但因为页面的内容是在data()函数里动态生成,有些内容是后端的json没有的,所以在把json数组的数据添加进data()函数里的数组的时候动态的添加一些数据。
1.首先获取后端的json数据:
var jsonObj = JSON.parse(JSON.stringify(successResponse.data.data));
1
successResponse是服务器响应内容,其中包含json数据。这里涉及到一个json格式转化问题,因为响应内容successResponse是个对象,所以我们需要先用stringify函数把json转成字符串形式。但因为后面要获取json里面指定的key对应的value,并且自定义添加一些数据,所以我们还需要用parse函数转成Json对象形式(也叫json序列化)。有的朋友就会问了,为什么不直接使用successResponse.data.data?还要转来转去?因为原本不是json对象。是HttpServletResponse对象。
2.遍历json数组对象,添加自定义数据
for (var i = 0; i < jsonObj.length; i++) {
jsonObj[i].index='table'
}
1
2
3
给json数组对象的每个位置添加自定义内容index:‘table’。
这里数组对象里原来是没有index这个key的,但是会自己添加进去。
3.将改造后的json数组对象传给data()里声明的数组。