淘先锋技术网

首页 1 2 3 4 5 6 7

ES6数组可以使用JSON.stringify()方法将其转化为JSON格式,如下:

const arr = [1, 2, 3];
const jsonArr = JSON.stringify(arr);
console.log(jsonArr); // 输出字符串 '[1,2,3]'

如果是一个对象数组或多维数组,则需要逐层遍历并转换为对应的JSON格式。例如:

const objArr = [
{name: 'Tom', age: 20},
{name: 'Jerry', age: 22},
{name: 'Kate', age: 21}
];
const jsonObjArr = JSON.stringify(objArr);
console.log(jsonObjArr); // 输出字符串 '[{"name":"Tom","age":20},{"name":"Jerry","age":22},{"name":"Kate","age":21}]'

可以看到,对象数组被转换为了包含多个JSON对象的数组,每个JSON对象包含对应的属性和值。

如果需要将JSON格式的字符串转换为对应的数组或对象,则可以使用JSON.parse()方法进行反转换。例如:

const str = '[1,2,3]';
const newArr = JSON.parse(str);
console.log(newArr); // 输出数组 [1, 2, 3]
const jsonObjStr = '[{"name":"Tom","age":20},{"name":"Jerry","age":22},{"name":"Kate","age":21}]';
const newObjArr = JSON.parse(jsonObjStr);
console.log(newObjArr); // 输出对象数组 [{name: 'Tom', age: 20}, {name: 'Jerry', age: 22}, {name: 'Kate', age: 21}]

在将数组转换为JSON格式或将JSON格式转换为数组时,需要注意特殊情况,例如NaN、Infinity、undefined等值需要被替换或排除掉。