博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JSON的学习
阅读量:5335 次
发布时间:2019-06-15

本文共 3148 字,大约阅读时间需要 10 分钟。

JSON语法是javascript语法的子集

JSON 语法是 JavaScript 对象表示语法的子集。

  • 数据在名称/值对中
  • 数据由逗号分隔
  • 大括号保存对象
  • 中括号保存数组

JSON 名称/值对

JSON 数据的书写格式是:名称/值对。

名称/值对包括字段名称(在双引号中),后面写一个冒号,然后是值:

"name" : "菜鸟教程"

JSON 值

JSON 值可以是:

  • 数字(整数或浮点数)
  • 字符串(在双引号中)
  • 逻辑值(true 或 false)
  • 数组(在中括号中)
  • 对象(在大括号中)
  • null

JSON 数字

JSON 数字可以是整型或者浮点型:

{ "age":30 }

JSON 对象

JSON 对象在大括号({})中书写:

对象可以包含多个名称/值对:

{ "name":"菜鸟教程" , "url":"www.runoob.com" }

JSON 数组

JSON 数组在中括号中书写:

数组可包含多个对象:

{"sites": [{ "name":"菜鸟教程" , "url":"www.runoob.com" }, { "name":"google" , "url":"www.google.com" }, { "name":"微博" , "url":"www.weibo.com" }]}

在上面的例子中,对象 "sites" 是包含三个对象的数组。每个对象代表一条关于某个网站(name、url)的记录。

JSON 布尔值

JSON 布尔值可以是 true 或者 false:

{"flag";true}

JSON  NULL值

{"age":null}

JSON 使用 JavaScript 语法

因为 JSON 使用 JavaScript 语法,所以无需额外的软件就能处理 JavaScript 中的 JSON。

通过 JavaScript,您可以创建一个对象数组,并像这样进行赋值:

 

var  sites=[        {"name":"xiaoming","age":22,"number":222},        {"name":"liming","age":23,"number":333}    ] 可以像这样访问 JavaScript 对象数组中的第一项(索引从 0 开始):    console.log(sites[0].name); 可以像这样修改数据:     sites[0].name="wanqngcui";    console.log( sites[0].name)

JSON 对象

对象语法

{ "name":"runoob", "alexa":10000, "site":null }

json对象在大括号({})中书写

对象可以包含多个key/value(键/值)对。

key必须是字符串,value可以是合法的JSON数据类型(字符串,数字,对象,布尔值,数组和null),key 和 value 中使用冒号(:)分割。每个 key/value 对使用逗号(,)分割。

访问对象值

(1)你可以通过(.)来访问对象的值:

var myobj,x; myobj={"name":"aa","age":24}; x=myobj.name; console.log(x);

(2)你也可以使用中括号([])来访问对象的值: 

var myobj,x; myobj={"name":"aa","age":24}; b=myobj["age"]; console.log(b) 

循环对象

你可以使用 for-in 来循环对象的属性:

var sites={        "name":"xiaoming",        "age":13,        "number":33    }    // 可以使用for- in 来循环对象的属性    for(x in sites){    console.log(x);    } 输出 name age number

在 for-in 循环对象的属性时,使用中括号([])来访问属性的值: 

var sites={        "name":"xiaoming",        "age":13,        "number":33    }    // 在for-in 循环对象的属性时,使用中括号([])来访问属性的值    for(x in sites){        console.log(sites[x])    }   输出:xiaoming 13 33

嵌套 JSON 对象

 JSON 对象中可以包含另外一个 JSON 对象:
 你可以使用点号(.)或者中括号([])来访问嵌套的 JSON 对象。
 
var sites={        "name":"xiaoming",        "age":13,        "number":33,        "local":{            "site1":"www.runoob.com",            "site2":"m.runoob.com",            "site3":"c.runoob.com"        }    }    console.log(sites.local.site1);    console.log(sites.local["site1"]); 输出:www.runoob.com     www.runoob.com

修改值

你可以使用点号(.)来修改 JSON 对象的值:你可以使用中括号([])来修改 JSON 对象的值:

var sites={        "name":"xiaoming",        "age":13,        "number":33,        "local":{            "site1":"www.runoob.com",            "site2":"m.runoob.com",            "site3":"c.runoob.com"        }    }    sites.local.site2=22;    sites.local["site1"]=33    console.log(sites.local.site2);    console.log(sites.local["site1"]); 输出:22 33

删除对象属性

我们可以使用 delete 关键字来删除 JSON 对象的属性:你可以使用中括号([])来删除 JSON 对象的属性:

(1)

var myobj ,i ,x;  myobj={      "name":"runoob",      "axexa":10000,      "sites":{          "site1":"www.baidu.com",          "site2":"www.gogle.com",          "site3":"www.chome.com",      }  }  delete  myobj.sites.site1;   delete  myobj.sites["site1"];  for(i in myobj.sites){      x=myobj.sites[i];      console.log(x)  }

  

 

转载于:https://www.cnblogs.com/wanqingcui/p/9554082.html

你可能感兴趣的文章
MSChart的研究
查看>>
C# 索引器
查看>>
MySQLdb & pymsql
查看>>
zju 2744 回文字符 hdu 1544
查看>>
delphi 内嵌汇编例子
查看>>
【luogu P2298 Mzc和男家丁的游戏】 题解
查看>>
前端笔记-bom
查看>>
MATLAB作图方法与技巧(一)
查看>>
上海淮海中路上苹果旗舰店门口欲砸一台IMAC电脑维权
查看>>
Google透露Android Market恶意程序扫描服务
查看>>
给mysql数据库字段值拼接前缀或后缀。 concat()函数
查看>>
迷宫问题
查看>>
【FZSZ2017暑假提高组Day9】猜数游戏(number)
查看>>
泛型子类_属性类型_重写方法类型
查看>>
eclipse-将同一个文件分屏显示
查看>>
对闭包的理解
查看>>
练习10-1 使用递归函数计算1到n之和(10 分
查看>>
Oracle MySQL yaSSL 不明细节缓冲区溢出漏洞2
查看>>
windows编程ASCII问题
查看>>
.net webService代理类
查看>>