先上点干货。
一、JSON字符串与JS对象转换
在前端,经常需要请求服务器返回一些数据,这些数据是用JSON字符串来表示的。为了使用这个字符串,需要把它转换成js对象。这里介绍三种转换方式:
1.Jquery提供:
var jsobj = $.parseJSON(data);// json转js obj
2.浏览器支持的:
var jsobj = JSON.parse(data);//json
JSON.stringify(jsobj);//js obj转json
3.JS支持的:
var jsobj = eval('(' + data + ')');//json转js obj,必须加上两端的小括号。此方式存在安全隐患
二、JSON总结
JSON
JavaScript Object Notation(JS对象表示法)
JSON对象可以通过JS内建的eval()函数生成原生的JS对象。
JS对象与JSON对象:
1.JS对象由花括号分隔。在括号内部,对象的属性以名称和值对的形式 (name : value) 来定义。属性由逗号分隔
2.JSON对象:
名称与值都要用“”括起来
VS XML:
相同之处:JSON是纯文本,具有“自我描述性”(人类可读),具有层级结构(值中存在值),可以通过JS进行解析,可使用AJAX进行传输。