您的位置:首页 > Web前端 > JavaScript

JSON

2016-04-26 21:46 525 查看


JSON

什么是JSON?

JSON(javascript object notation)【javascript 对象表示法】是一种轻量级的数据交换格式。


JSON语法

{}表示对象。
[]表示数组。
" "内是属性或值。
:前属性,后值。
,隔开多个数据。
属性是字符串,而值可以是数值,布尔,null,对象和数组。

JSON字符串与对象的区别

JSON字符串是指符合json要求的字符串,如var jsonStr="{'StudentID':100,'name':'snake'}"

JSON对象是指符合json要求的对象,如var jsonObj={"StudentID":100,"name":"snake"}

也就是说,json字符串外面是由单引号和双引号包住的字符串。

使用JSON

JSON是JS的一个子集,所以可以在JS中轻松的读写JSON。读写JSON都有2种方法,分别用“.”和“[key]”的方式。

首先先定义一个JSON对象。

[javascript] view
plain copy

var obj={

[javascript] view
plain copy

"1":"value1",

[javascript] view
plain copy

"2":"value2",

[javascript] view
plain copy

"count":3,

[javascript] view
plain copy

"person":[

{

[javascript] view
plain copy

"id":1,

"name":"张三"

[javascript] view
plain copy

},

[javascript] view
plain copy

{

[javascript] view
plain copy

"id":2,

"name":"李四"

}

],

[javascript] view
plain copy

"object":{

[javascript] view
plain copy

"id":1,

[javascript] view
plain copy

"msg":"对象里的对象"

[javascript] view
plain copy

}

}

1.从JSON中读取数据

[javascript] view
plain copy

function readJSON(){

[javascript] view
plain copy

alert(obj.1);//会报错Uncaught SyntaxError: Unexpected number

[javascript] view
plain copy

alert(obj.count);//或alert(obj["count"]);

[javascript] view
plain copy

alert(obj.person[0].name);//或alert(obj.person[0]["name"]);

[javascript] view
plain copy

alert(obj.object.msg);//或alert(obj.object["msg"]);

}

所以最好不要把数字当做属性

2.向JSON里面写数据

[javascript] view
plain copy

function writeJSON(){

[javascript] view
plain copy

//如果没有属性的,则创建该键值对,有该属性,则改变其值。

[javascript] view
plain copy

obj.sex="男";//或obj["sex"]=男;

[javascript] view
plain copy

}

3.删除JSON里面的数据

[javascript] view
plain copy

function DeleteJSON(){

[javascript] view
plain copy

delete obj.count;

}

4.遍历JSON对象

[javascript] view
plain copy

function TraverseJSON(){

[javascript] view
plain copy

for(var att in obj){

[javascript] view
plain copy

console.log(att+":",obj[att]);

[javascript] view
plain copy

}

}

5.JSON对象与JSON字符串的转换

[javascript] view
plain copy

var strObj=JSON.stringify(obj);//把JSON对象字符化。

[javascript] view
plain copy

var newObj=JSON.parse(strObj);//把JSON字符串解析成JSON对象。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: