在javascript中,可以使用转化函数“JSON.stringify()”来将数组转为json格式,语法格式“JSON.stringify(数组)”;该函数可以对数组或对象进行转换,然后返回包含JSON文本的字符串。
总结:我们定义的是一种对象的格式,var data = {} 是 var data = new Object() 的缩写,JSON.stringify() 不能转自定义下标的数组,可以转0 1 2 那种下标的数组,当然那可能不是你想要的。
javascript数组转JSON格式
要点1:转化函数 JSON.stringify()
要点2:在js里写数组的时候是var data = new Array() 但是你如果是要转json显示的时候就要写成 var data = {},不然转出来的json全是空的。
先看一种错误格式:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
<script>
var data = new Array();
for ( var i = 0; i < 5; i++) {
data[i] = new Array();
data[i][ 'day' ] = '2018-06-01' ;
data[i][ 'time_data' ] = '数据' ;
}
console.log(data);
var res = JSON.stringify(data);
console.log(res);
</script>
|
效果:
正确格式:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
<script>
var data = {};
for ( var i = 0; i < 5; i++) {
data[i] = {};
data[i][ 'day' ] = '2018-06-01' ;
data[i][ 'time_data' ] = '数据' ;
}
console.log(data);
var res = JSON.stringify(data);
console.log(res);
</script>
|
结果:
总结:可以看出,其实我们定义的是一种对象的格式,var data = {} 是 var data = new Object() 的缩写,JSON.stringify() 不能转自定义下标的数组,可以转0 1 2 那种下标的数组,当然那可能不是你想要的。