方法一
JSON.parse()
let str = '{"name":"zs","age":18}'
JSON.parse(str) //{name: "zs", age: 18}
方法二
eval()
let str = '({"name":"zs","age":18})'
//注意这字符串里面必须加上小括号否则报错,eval会执行'()'内部的代码
console.log(eval(str))
方法三
Function(str)()
//注意这里不需要加小括号
let str = '{name:"zs",age:18}'
console.log( new Function('return' + str)() )
总结
JSON.parse()
只能转化标准的JSON字符串(键必须是字符串,字符串必须使用双引号括起来)
eval(str)
将字符串转化为js语句,并执行
如果不希望转化后是js语句,可使用括号将字符串包裹起来
Function(str)()
只能转化对象字符串
非必要别用eval ,尽量使用Function代替
转化标准json字符串使用JSON.parse(),否则用function