什么是JSON JSON名称/值对 JSON文件是什么

一 、什么是JSON?

  1. JSON指的是JavaScript对象表示法(JavaScript Object Notation)
  2. JSON是轻量级的文本数据交换格式
  3. JSON独立于语言*
  4. JSON具有自我描述性,更易理解
    *JSON使用JavaScript语法来描述数据对象,但是JSON仍然独立于语言和平台。
    JSON解析器和JSON库支持许多不同的编程语言。
    二、JSON语法
    (一)、JSON语法规则
    JSON语法是JavaScript对象表示语法的子集。
  5. 数据在名称/值对中
  6. 数据由逗号 , 分隔
  7. 花括号 {} 保存对象
  8. 方括号 [] 保存数组
    (二)、JSON名称/值对
    JSON数据的书写格式是:名称/值对。
    名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值:
    “firstName”: “John”
  9. {www.veryxzx.com}
    等价于这条JavaScript语句:
    firstName = “John”;
    (三)、JSON值
    JSON值可以是:
  10. 数字(整数或浮点数)
  11. 字符串(在双引号 “” 中)
  12. 逻辑值(true或false)
  13. 数组(在方括号中)
  14. 对象(在花括号中)
  15. Null
    (四)、JSON对象
    JSON对象在花括号中书写:
    对象可以包含多个名称/值对:
    { “firstName” : “John” , “lastName” : “Doe” }
  16. {www.veryxzx.com}
    (五)、JSON数组
    JSON数组在方括号中书写:
    数组可包含多个对象:
{
     
	"employees":[
	{
     
		"firstName" : "John",
		"lastName" : "Doe"
	},
	{
     
		"firstName" : "Anna",
		"lastName" : "Smith"
	},
	{
     
		"firstName" : "Peter",
		"lastName" : "Jones"
	}
	]
}

在上面的例子中,对象"employees"是包含三个对象的数组。每个对象代表一条关于某人(有姓和名)的记录。
(六)、JSON使用JavaScript语法
因为JSON使用JavaScript语法,所以无需额外的软件就能处理JavaScript中的JSON。
通过JavaScript,您可以创建一个对象数组,并像这样进行赋值:

var employees = [
	{
      "firstName" : "Bill","lastName" : "Gates" },
	{
      "firstName" : "George","lastName" : "Bush" },
	{
      "firstName" : "Thomas","lastName" : "Carter" }
];
//获取
console.log(employees[0].lastName);
//修改数据
employees[0].lastName="Jobs";
console.log(employees[0].lastName);

(七)、JSON文件

  1. JSON文件的文件类型是".json"
  2. JSON文本的MIME类型是"application/json"
  3. {www.veryxzx.com}

三、JSON字符串和JavaScript对象互转
(一)、JSON字符串转JavaScript对象
JSON最常见的用法之一,是从web服务器上读取JSON数据(作为文件或作为HttpRequest),将JSON数据转换为JavaScript对象,然后在网页中使用该数据。
下面的例子为两种JSON字符串转JavaScript对象的方法;推荐使用JSON.parse()

//==把JSON字符串转JavaScript对象
var strJson='[{
      "firstName" : "Bill" , "lastName" : "Gates"  },
{
      "firstName" : "George" , "lastName" : "Bush" },
{
      "firstName" : "Thomas" , "lastName" : "Carter"}]';
//1、使用JavaScript的eval();必须把文本包围在括号中,这样才能避免语法错误
var obj = eval("(" + strJson + ")");
console.log(obj[0].lastName);
//2、JSON.parse()推荐
var obj2=JSON.parse(strJson);
console.log(obj2[0].lastName);

(二)、JavaScript对象转JSON字符串
JSON.stringify()方法用于将JavaScript值转换为JSON字符串。

//==把JavaScript对象转JSON字符串
var employees = [
	{
      "firstName" : "Bill" , "lastName" : "Gates" },
	{
      "firstName" : "George" , "lastName" : "Bush" },
	{
      "firstName" : "Thomas" , "lastName" : "Carter" }
];
var str = JSON.stringify(employees);
console.log(typeof(str));
console.log(str);
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值