在平常的javascript开发工作中,大家可能经常需要将数组格式转换为json格式,便于数据传输。本文章就为大家介绍,在javascript中,如何将数组(通常是二维数组)转换为json.
要点:在javascript中,转换json格式需要用到函数JSON.stringify();
正常情况下,我们会这样写:
<script>
//定义一个数组
var data = new Array();
for(let i = 0; i < 5; i++){
//定义一个二维数组
data[i] = new Array();
data[i]['name'] = 'tom';
data[i]['age'] = '23';
}
//打印数组
console.log(data);
//转换json打印
var jsonData = JSON.stringify(data);
console.log(jsonData);
</script>
结果如下图,转换json后,内容为空,显然不是我们想要的结果。
但是如果我们这样写:
<script>
//定义一个数组(实际上是对象,{} 是 new Object()的缩写),把new Array() 换成 {}
var data = {};
for(let i = 0; i < 5; i++){
//定义一个二维数组(二维对象数组)
data[i] = {};
data[i]['name'] = 'tom';
data[i]['age'] = '23';
}
//打印
console.log(data);
//转换json格式打印
var jsonData = JSON.stringify(data);
console.log(jsonData);
</script>
结果如下图:json数据已经正确打印,是我们想要的结果
总结:JSON.stringify()函数是不能正常转换二维数组的,需要我们定义成对象形式的二维数组,就能转换成我们需要的json格式。