gpt4 book ai didi

javascript - javascript 中的 isJSON,无需 try/catch

转载 作者:行者123 更新时间:2023-12-02 19:13:54 25 4
gpt4 key购买 nike

Possible Duplicate:
How to check if a string is a valid JSON string in JavaScript without using Try/Catch

这个问题已经在这里提出了:How to check if a string is a valid JSON string in JavaScript without using Try/Catch 。没有给出有效答案,即使经过验证的答案也没有回答问题。

因此,不使用 try/catches 执行此操作的唯一方法似乎是通过正则表达式;其中一个答案中给出的正则表达式仅针对 eval 进行验证,因此像“2001-05-06”这样的简单字符串将通过正则表达式,即使它不是 JSON。

那么有没有人有一个好的正则表达式来验证格式良好的 JSON 字符串?

最佳答案

使用正则表达式而不是 try/catch 就是用无效的 hack 替换正确的解决方案。

您提供的链接建议更改 JSON parsing code您可以修改它以不引发异常。我建议替换为 json_parse.js以下代码

    error = function (m) {
// Call error when something is wrong.
throw {
name: 'SyntaxError',
message: m,
at: at,
text: text
};
},

通过调用您提供的回调。

但坦率地说,我最合理的建议是使用try/catch。这是您这里拥有的最好的工具。请注意,我的 JSON.parse 修改“建议”应该管理所有循环/递归的中断,这正是异常的作用。

关于javascript - javascript 中的 isJSON,无需 try/catch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13359226/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com