后端响应的数据如果不是json,而我们当作json处理,将会出现意想不到的错误。那么,JS如何判断一个字符串是否是Json字符串呢?
写个函数吧,如下:
假如是 json字符串 则返回true,否则返回false。
注意:如果变量是个object,也会返回false,它只校验 字符串。
/**
* 判断一个变量是不是一个Json字符串
* @param {[type]} str [description]
* @return {Boolean} [description]
*/
function _isJSON(str) {
if (typeof str == 'string') {
try {
var obj = _parseJSON(str);
if(typeof obj == 'object' && obj ){
return true;
}else{
return false;
}
} catch(e) {
return false;
}
}
return false;
}