JSON对象
JSON对象在花括号中书写:
对象可以包含多个名称/值对:
{"firstName":"John", "lastName":"Doe"}
JSON数组
JSON数组在方括号中书写:
数组可包含多个对象:
{undefined
"employees":[
{"firstName":"John", "lastName":"Doe"}
{"firstName":"Anna", "lastName":"Smith"}
{"firstName":"Peter", "lastName":"Jones"}
]
}
JSON使用JavaScript
因为JSON使用JavaScript语法,所以无需额外的软件就能处理JavaScript中的JSON。
通过JavaScript,您可以创建一个对象数组,并像这样进行赋值:
var employees = [
{"firstName":"Bill", "lastName":"Gates"}
{"firstName":"George", "lastName":"Bush"}
{"firstName":"Thomas", "lastName":"Carter"}
];
像这样访问JavaScript对象数组中的第一项:
employees[0].lastName;
修改数据:
employees[0].lastName="Jobs";
JSON文件
JSON文件的文件类型是".json"
JSON文本的MIME类型是"application/json"
把JSON文本转换为JavaScript对象
JSON最常见的用法之一,是从web服务器上读取JSON数据(作为文件或作为HttpRequest),将JSON数据转换为JavaScript对象,然后在网页中使用该数据。
JSON实例-来自字符串的对象
创建包含JSON语法的JavaScript字符串
var txt = '{"employees":['+
' {"firstName":"Bill", "lastName":"Gates"}, ' +
' {"firstName":"George", "lastName":"Bush"}, '+
' {"firstName":"Thomas", "lastName":"Carter"} ]}';
由于JSON语法是JavaScript语法的子集,JavaScript函数eval()可用于将JSON文本转换为JavaScript对象。
eval()函数使用的是JavaScript编译器,可解析JSON文本,然后生成JavaScript对象。必须把文本包围在括号中,这样才能避免语法错误:
var obj=eval("("+ txt +")");