javascript - 如何能够检查 JSON.parse 是否失败或返回错误值

标签 javascript json parsing

<分区>

目标:

const data = JSON.parse(this.description) ? JSON.parse(this.description) : 空

如果我运行这个语句,我希望能够在一个无法解析的值上运行它,如果不能解析则返回 null。不幸的是,我只是收到一个错误,提示 Unexpected token at ....,我知道这是因为我正在传递一个无法解析的数据。我希望它能够返回一个错误值,这样我就可以将某些内容设置为 null,而不仅仅是中断和停止应用程序。

尝试:

function checkParse(json) {
  try {
    return JSON.parse(json);
  } catch (e) {
    return null
  }
}


checkParse(description);

这将返回错误 Unexpected token l

最佳答案

您可以尝试在解析之前检查变量类型

if(typeof this.description === "string"){data = JSON.parse(this.description}
else{data = null;}

关于javascript - 如何能够检查 JSON.parse 是否失败或返回错误值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46983689/

相关文章:

javascript - 未捕获的类型错误 : data. 有些不是函数

json - druid kafka 索引服务设置

javascript - 如何使用 ID 从点击事件的 JSON 文件中获取值并在表单中显示值

c# - Mathematica 语法的解析器?

jquery - 使用 javascript 解析 Restful Web 服务 xml 响应

javascript - 如何在 knockout 绑定(bind)中运行 afterRender 中的函数?

javascript - 为 "scroll to div"分离两个脚本

javascript - MongoDB如何在查询中引用对象的属性

c# - 如何在 Silverlight 中序列化派生类

javascript - 是否有一套完整的 JavaScript (ECMAScript) 解析器测试用例可用?