失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 记录 js中将字符串转化成json对象的常见三种方法

记录 js中将字符串转化成json对象的常见三种方法

时间:2023-09-15 23:12:05

相关推荐

记录 js中将字符串转化成json对象的常见三种方法

js中将字符串转化成json对象的常见三种方法:

var data='[{"name":"xiao","age":12},{"name":"xiao","age":12}]';//方式一var json1 = JSON.parse(data);dy(":"+json1[0].name);//方式二var json2 = eval("(" + data+ ")");dy(json2[0].name);//方式三var json3 = (new Function("return " + data))();dy(json3[0].name);

var str = '{"name":"小明","age":18}';

将字符串转化json对象:

1. var json = JSON.parse(str);//要求数据格式严,并且要用单引号('')来套双引号("")

2. var json = eval("(" + str + ")");//注意,固定写法,可转换大部分数据

3. var json = (new Function("return"+ str))();//注意,固定写法(里面的 return不可缺),可转换大部分数据。

eval()的返回值遵循以下规则:

1.如果eval()的参数不是字符串,那么eval()将直接返回参数。

2.如果eval()的参数是字符串,那么eval()将这个字符串解析成代码后进行执行,并返回最后一行代码执行的结果。

3.如果字符串无法解析成合法的代码,eval()将抛出SyntaxError错误。

如下的data字符串就不可以用JSON.parse()来转换,只能用下列两种

var data ="[{'name':'xiao','age':12},{'name':'xiao','age':12}]";

//方式一

var obj = eval("("+data+")");alert(obj.length);//2

//方式二

var jsonObj = (new Function("return"+ data))();alert(jsonObj.length);//2

var str1 = "{'name':'李杰','age':'30'}";//只能用eval()或者new Function()的方式来转化

java中定义字符串一般都习惯用双引号("")套单引号('')来

String str = "{'name':'李杰','age':'30'}";

response.getWriter().println(str);//发送到前台页面中

js中ajax程序用eval()函数来转换

//alert(xmlHttp.responseText);//接收服务器端String str = "{'name':'李杰','age':'30'}";

var obj = eval("("+xmlHttp.responseText+")");

alert(obj.name);

alert(obj.age);

没啥事儿,找了点儿资料,就小小记录下。看到的伙伴,不足之处,不用太计较。

如果觉得《记录 js中将字符串转化成json对象的常见三种方法》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。