一尘不染

如何测试字符串是否为JSON?

javascript

我有一个简单的AJAX调用,服务器将返回包含有用数据的JSON字符串或PHP函数产生的错误消息字符串mysql_error()。如何测试此数据是JSON字符串还是错误消息。

最好使用一个称为的函数isJSON,就像您可以使用该函数instanceof来测试某个东西是否为数组一样。

这就是我要的:

if (isJSON(data)){
    //do some data stuff
}else{
    //report the error
    alert(data);
}

阅读 347

收藏
2020-05-01

共1个答案

一尘不染

使用JSON.parse

function isJson(str) {
    try {
        JSON.parse(str);
    } catch (e) {
        return false;
    }
    return true;
}
2020-05-01