【JSON学习之道】js操作JSON
JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。 JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。
JSON的规则很简单: 对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。
JSON有如下几种表现形式,有代码演示为例:
var user = { "username":"andy", "age":20, "info": { "tel": "123456", "cellphone": "98765"}, "address": [ {"city":"beijing","postcode":"222333"}, {"city":"newyork","postcode":"555666"} ] }
有上述JSON 对象表现形式,可以使用以下js代码来调用
alert(user.username); //直接调用属性 alert(user.age);
这表示一个user对象,拥有username, age, info, address 等属性。
当然,这些操作JSON只是部分,也可以用JSON来简单的修改数据,修改上面的例子
user.username = "Tom"; //修改对象属性值 alert(user.username);
如果遇到是一个JSON格式的字符串,在操作中肯定用到格式转换额问题。
1.可以使用eval来转换JSON字符到Object
JS代码
function myEval() { var str = '{ "name": "Violet", "occupation": "character" }'; var obj = eval('(' + str + ')'); alert(obj.toJSONString()); }
2.或使用parseJSON()方法
js代码
function myEval() { var str = '{ "name": "Violet", "occupation": "character" }'; var obj = str.parseJSON(); alert(obj.toJSONString()); }
当然,在JSON使用中,比较多的使用在Ajax中,更为方便,