📅  最后修改于: 2023-12-03 15:25:03.520000             🧑  作者: Mango
在 Web 开发中,我们经常会遇到需要将字符串转换成 JSON 的场景。在 JavaScript 中,我们可以使用内置的 JSON
对象来进行字符串和 JSON 的相互转换。
我们可以使用 JSON.stringify()
方法将 JSON 对象转换为字符串。
const myObj = { name: 'John', age: 30 };
const myJSON = JSON.stringify(myObj);
console.log(myJSON); // {"name":"John","age":30}
上面的代码中,myObj
是一个 JavaScript 对象,我们使用 JSON.stringify()
方法将它转换为一个 JSON 字符串,并将转换后的字符串存储在变量 myJSON
中。
我们可以使用 JSON.parse()
方法将 JSON 字符串转换为 JSON 对象。
const myJSON = '{"name":"John","age":30}';
const myObj = JSON.parse(myJSON);
console.log(myObj.name); // "John"
console.log(myObj.age); // 30
上面的代码中,myJSON
是一个 JSON 字符串,我们使用 JSON.parse()
方法将其转换为一个 JavaScript 对象,并将转换后的对象存储在变量 myObj
中。
当我们尝试将一个无效的 JSON 字符串转换为 JSON 对象时,JSON.parse()
方法会抛出一个异常。
为了避免这种情况发生,我们应该始终在调用 JSON.parse()
方法之前先验证 JSON 字符串的有效性。
const myJSON = '{"name":"John","age":30';
let myObj;
try {
myObj = JSON.parse(myJSON);
} catch (err) {
console.log("Invalid JSON string");
}
上面的代码中,myJSON
字符串缺少一个括号,因此它是无效的 JSON 字符串。我们使用 try...catch
语句来捕获 JSON.parse()
抛出的异常,然后在控制台输出一条错误信息。
JavaScript 内置了 JSON
对象,它提供了 JSON.stringify()
和 JSON.parse()
方法,用于将 JavaScript 对象和 JSON 字符串相互转换。
在将 JSON 字符串转换为 JavaScript 对象时,我们应该注意验证 JSON 字符串是否有效,以避免 JSON.parse()
抛出的异常。