我想检查收到的字符串是否为 JSON,我尝试了以下代码:
try {
JSON.parse(-10); // Same for "-10"
}catch(e) {
console.log('inside catch');
}
代码永远不会进入catch block 内!为什么会这样呢?
最佳答案
A plain value is valid JSON 。这就是为什么您没有记录 'inside catch'
的原因。
document.write(JSON.parse(-10));
但是,这不是有效的 JSON:
try {
JSON.parse('{');
}catch(e) {
document.write('inside catch');
}
如您所见,try
/catch
工作得很好。
关于javascript - try/catch 检查 json 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33824441/