JS中如何把JSON格式的字符串转化为一个对象或数组呢?

JavaScript014

JS中如何把JSON格式的字符串转化为一个对象或数组呢?,第1张

通常都是用eval()函数来进行转换的,例如:var

sJson

=

'{a:

1}'var

o

=

eval('('

+

sJson

+

')')alert(o.a)如果是数组的话,也是类似的,在字符串两边各加上一个小括号,然后用eval()函数将其转换为数组,再赋值给某个变量,就可以直接使用了。

使用toJSONString()或者全局方法JSON.stringify()。将json字符串转换为json对象的方法。在数据传输过程中,json是以文本,即字符串的形式传递的,JS操作的是JSON对象,JSON对象和JSON字符串之间的相互转换是关键。

第一种

JSON.parse(jsonString)

第二种

eval("("+jsonString+")")

第三种

var obj=(function ToJSON(o){

if(typeof(o)=="string")try{return new Function("return "+o)()}catch(e){return null}

})("[{name:'zhangsan',age:'24'},{name:'lisi',age:'30'},{name:'wangwu',age:'16'},{name:'tianqi',age:'7'}]")

for(var b in obj)alert(obj[b].name)