Avatar ·

在JavaScript中安全地将JSON字符串转换为对象

大家好!我是JavaScript新手,遇到了一个问题。我从服务器获取JSON格式的数据,但当我尝试使用JSON.parse()将字符串转换为对象时,有时能正常工作,有时却会报错。以下是我的代码示例: ```javascript const data = '{"name": "John", "age": 30}'; const obj = JSON.parse(data); console.log(obj.name); // John — 正常工作 ``` 但如果服务器返回的字符串是这样的: ```javascript const badData = '{name: "John", age: 30}'; // 键没有引号 const obj = JSON.parse(badData); // 抛出SyntaxError ``` 或者服务器以普通文本形式返回错误: ```javascript const errorResponse = 'Internal Server Error'; const obj = JSON.parse(errorResponse); // 同样报错 ``` 我的程序直接崩溃了,我不知道如何处理。我读到过应该使用try/catch,但不确定如何正确使用。也许有更安全的方法?比如某些库或其他功能?