javascript:JSON 使用大全( 二 )


5-1、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;
返回的内容是:
【javascript:JSON 使用大全】Gates
可以像这样修改数据:
employees[0
.lastName = \"Jobs\";
通过 JSON 字符串来创建对象First Name:
输出的结果:
通过 JSON 字符串来创建对象
First Name: Jobs
6、JSON 文件
JSON 文件的文件类型是 \".json\"
JSON 文本的 MIME 类型是 \"application/json\"
七、把 JSON 文本转换为 JavaScript 对象
JSON 最常见的用法之一 , 是从 web 服务器上读取 JSON 数据(作为文件或作为 HttpRequest) , 将 JSON 数据转换为 JavaScript 对象 , 然后在网页中使用该数据 。
为了更简单地为您讲解 , 我们使用字符串作为输入进行演示(而不是文件) 。
1、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 + \")\");
例子:
在网页中使用 JavaScript 对象:
First Name:
Last Name:
通过 JSON 字符串来创建对象:
通过 JSON 字符串来创建对象First Name: 

Last Name: 

输出结果:
通过 JSON 字符串来创建对象
First Name: George
Last Name: Bush
2、JSON 解析器
提示:eval() 函数可编译并执行任何 JavaScript 代码 。 这隐藏了一个潜在的安全问题 。
使用 JSON 解析器将 JSON 转换为 JavaScript 对象是更安全的做法 。 JSON 解析器只能识别 JSON 文本 , 而不会编译脚本 。
在浏览器中 , 这提供了原生的 JSON 支持 , 而且 JSON 解析器的速度更快 。
较新的浏览器和最新的 ECMAScript (JavaScript) 标准中均包含了原生的对 JSON 的支持 。
用 JSON 字符串创建对象用 JSON 字符串创建对象:
输出的结果:
用 JSON 字符串创建对象
Bill Gates 62
对于较老的浏览器 , 可使用 JavaScript 库


推荐阅读