JSON 学习笔记

一、什么是JSON?

JSON 英文全称 JavaScript Object Notation,JSON 是用于存储和传输数据的格式。JSON 最常见的用法是从 web 服务器上读取 JSON 数据,将 JSON 数据转换为 JavaScript 对象,然后在网页中使用该数据。

JSON简单说就是javascript中的对象和数组,JSON的就由对象和数组构成,通过这两种结构可以表示各种复杂的数据。

1、对象

JavaScript 对象是拥有属性和方法的数据。在 JavaScript中,几乎所有的事物都是对象。对象也是一个变量,但对象可以包含多个值(多个变量)。可以说 "JavaScript 对象是变量的容器"。
创建 JavaScript 对象:

var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};

2、数组

数组对象是使用单独的变量名来存储一系列的值。数组也是一种对象。

创建一个数组:(方法之一)

var myCars=["Saab","Volvo","BMW"];

二、JSON 语法规则

  1. 数据为 键/值 对。
  2. 数据由逗号分隔。
  3. 大括号保存对象
  4. 方括号保存数组

创建一个JSON:

var txt = '{ "employees" : [' +
'{ "firstName":"John" , "lastName":"Doe" },' +
'{ "firstName":"Anna" , "lastName":"Smith" },' +
'{ "firstName":"Peter" , "lastName":"Jones" } ]}';

三、JSON→Javascript转换

JSON 转换为 JavaScript 对象有2个方法,一是JavaScript 函数 eval() ,二是JSON 解析器:JSON.parse()。

1、eval() 函数

语法:

eval(string)

由于eval的参数是字符串,必须把文本包围在括号中,这样才能避免语法错误:

var obj = eval ("(" + txt + ")");

而不是

var obj = eval (txt);


2、JSON.parse()

var obj = JSON.parse(text);

eval() 函数使用的是 JavaScript 编译器,它可编译并执行任何 JavaScript 代码。这隐藏了一个潜在的安全问题,所以更安全的做法是使用JSON.parse()。

JSON 解析器只能识别 JSON 文本,而不会编译脚本,而且 JSON 解析器的速度更快。缺点是一些较老的浏览器并不原生的JSON 支持。

原文地址:https://www.cnblogs.com/linyewei/p/4366559.html