前端数据转换:将对象转为 JSON 字符串

在前端开发中,我们经常需要将 JavaScript 对象转换为 JSON 字符串,以便进行数据交换或存储。

最常用的方法是使用 JSON.stringify() 函数。

  • 直接转换: JSON.stringify() 可以直接将简单对象或数组转换为 JSON 字符串。

    javascript

    let data = [{ name: 'John', age: 30 }, { name: 'Jane', age: 25 }];

    let jsonString = JSON.stringify(data);

  • 处理循环引用: 当对象存在循环引用时,JSON.stringify() 会报错。为了解决这个问题,我们可以自定义一个函数来检测循环引用,并返回特定值。

    javascript

    function handleCircular(obj, seen = new Set()) {

    if (seen.has(obj)) return '[CIRCULAR]';

    seen.add(obj);

    return JSON.stringify(obj, (key, val) =>

    typeof val === 'object' ? handleCircular(val, seen) : val

    );

    }

  • 自定义输出: JSON.stringify() 还支持传入一个函数作为第三个参数,用于自定义输出格式或过滤数据。

zip 文件大小:148.78MB