JS如何判断一个字符串是不是JSON格式

JavaScript09

JS如何判断一个字符串是不是JSON格式,第1张

// 所谓json格式,无非就是对象或者数组

// 就是所谓的{}、[]

var str = "  {}"

var obj = null

try{

    obj = eval("(" + str + ")")

}catch(e){

}

var xy = Object.prototype.toString.call(obj)

if (xy == "[object Object]" || xy == "[object Array]") {

    console.log("是json格式")

} else {

    console.error("不是json格式")

}

试着解码一下,加上try...catch。<br>例如:<br>try{<br>var obj = eval('(' + str + ')')<br>alert("str是json字符串")<br>}<br>catch(e){<br>alert("str不是json字符串")<br>}