`

12月28号json(第55天的学习)

 
阅读更多
JavaScript Object Notation json全称
意思是javascript 操作对象的表达方法
JSON建构有两种结构:
  json就是javascript中的对象和数组,所以这两种结构就是对象和数组2种结构,通过这两种结构可以表示各种复杂的结构
  1、对象:对象在js中表示为“{}”扩起来的内容,数据结构为 {key:value,key:value,...}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。
  2、数组:数组在js中是中括号[]扩起来的内容,数据 ["java","javascript","vb",等等一行的],取值方式使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种,对象、数组2种结构就可以组合成复杂的数据结构了。

JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间传递这个字符串,JavaScript 很容易解释它,而且 JSON 可以表示比"名称 / 值对"更复杂的结构。可以表示数组和复杂的对象,就是键和值的简单列表

值对
按照最简单的形式,可以用下面这样的 JSON 表示"名称 / 值对":
{ "firstName": "Brett" }
非常基本,而且实际上比等效的纯文本"名称 / 值对"占用更多的空间:
firstName=Brett
但是,当将多个"名称 / 值对"串在一起时,JSON 就会体现出它的价值了。首先,可以创建包含多个"名称 / 值对"
{ "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" }
从这上面来看,这与"名称 / 值对"相比并没有怎么样,但是在这种情况下 JSON 更容易使用,而且可读性更好。例如,它明确地表示以上三个值都是同一记录的一部分;花括号使这些值有了某种联系。

表示数组
  当需要表示一组值时,JSON 能够提高可读性,而且可以减少复杂性。假设表示一个人名列表,在XML中,需要许多开始标记和结束标记;如果使用典型的名称 / 值对(就像在本系列前面文章中看到的那种名称 / 值对),那么必须建立一种专有的数据格式,或者将键名称修改为 person1-firstName这样的形式。
  使用 JSON就只需将多个带花括号的记录分组在一起:
  { "people": [
  { "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },
  { "firstName": "Jason", "lastName":"Hunter", "email": "bbbb"},
  { "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }
  ]}

一个名为 people的变量,值是包含三个条目的数组,每个条目是一个人的记录,其中包含名、姓和电子邮件地址。上面的示例演示如何用括号将记录组合成一个值,可以使用相同的语法表示多个值(每个值包含多个记录):
  { "programmers": [
  { "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },
  { "firstName": "Jason", "lastName":"Hunter", "email": "bbbb" },
  { "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }
  ],
  "authors": [
  { "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" },
  { "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" },
  { "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" }
  ],
  "musicians": [
  { "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" },
  { "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" }
  ] }
    这里最值得注意的是,能够表示多个值,每个值进而包含多个值。但是还应该注意,在不同的主条目(programmers、authors 和 musicians)之间,记录中实际的名称 / 值对可以不一样。JSON 是完全动态的,允许在 JSON 结构的中间改变表示数据的方式。
  在处理 JSON 格式的数据时,没有需要遵守的预定义的约束。所以,在同样的数据结构中,可以改变表示数据的方式,甚至可以以不同方式表示同一事物。
编辑本段
格式应用

  掌握了 JSON 格式之后,在 JavaScript 中使用它就很简单了。JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。
将 JSON 数据赋值给变量
  可以创建一个新的 JavaScript 变量,然后将 JSON 格式的数据字符串直接赋值给它:
  var people = { "programmers": [ { "firstName": "Brett", "lastName":"McLaughlin", "email": "aaaa" },
  { "firstName": "Jason", "lastName":"Hunter", "email": "bbbb" },
  { "firstName": "Elliotte", "lastName":"Harold", "email": "cccc" }
  ],
  "authors": [
  { "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" },
  { "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" },
  { "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" }
  ],
  "musicians": [
  { "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" },
  { "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" }
  ] }
  现在 people包含前面看到的 JSON 格式的数据。
  但是上面的长字符串实际上只是一个数组;将这个数组放进 JavaScript 变量之后,就可以访问它。实际上,要想访问 programmers 列表的第一个条目的姓氏,只需在 JavaScript 中使用下面这样的代码:
  people.programmers[0].lastName;
  数组索引是从零开始的。
  下面是使用同一变量的几个示例。
  people.authors[1].genre // Value is "fantasy"
  people.musicians[3].lastName // Undefined. This refers to the fourth entry, and there isn't one
  people.programmers[2].firstName // Value is "Elliotte"
  利用这样的语法,可以处理任何 JSON 格式的数据,而不需要使用任何额外的 JavaScript 工具包或 API。

var str = '{"stuno":"0"}';
eval('var json = ' + str);
// var json = eval('('+str+')');
alert(json.stuno)
for(var name in json){
  alert(name );//name 结果 stun
  alert(json[name]);
}

var key = 'stuno';
alert(json[key]);
键就是key
分享到:
评论

相关推荐

    Json 入门学习资料

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web应用程序之间传递数据。它基于JavaScript的一个子集,但其实它是语言无关的,有独立的规范,并且可以被许多编程语言解析和生成。以下...

    json学习文档帮助学习json

    JSON,全称JavaScript Object Notation,是一种轻量级的数据交换格式,因其简洁、易读、易解析的特性,被广泛应用于各种编程语言间的数据传输。它源于JavaScript编程语言的一个子集,符合ECMA262第三版规范。尽管...

    世界手机号码区号代码json

    世界手机号码区号代码json

    全国省市车牌号json数据

    全国车牌号json数据

    json学习资料

    在这个"json学习资料"的压缩包中,我们可能会找到与Java开发相关的JSON处理示例和代码。 在Java中,处理JSON的主要库有Jackson、Gson和org.json等。这些库提供了方便的方法来解析JSON字符串,将其转换为Java对象,...

    json学习文档

    在"json 实现ajax 返回对象 操作 json 学习 json研究"这个主题中,我们将深入探讨以下几个关键知识点: 1. **JSON格式基础**:JSON是一种文本格式,它由键值对组成,以大括号{}包围。键是字符串,用双引号包围,...

    Json学习 Json学习

    5. **基本数据类型**:JSON支持布尔值(`true`和`false`)、整数(十进制、八进制和十六进制)、浮点数以及null。 6. **简单应用**:在Java中实现JSON RPC,可能涉及创建Web工程、导入JSON库、配置web.xml、定义可...

    JSON.rar_Delphi JSON_JSON_delphi json_json delphi

    通过对这些源代码的学习,开发者可以深入理解如何在Delphi中有效地使用JSON,从而提高数据处理效率,并与Web服务或其他使用JSON的应用程序进行无缝通信。通过实践和调试这些代码,你将能够掌握Delphi与JSON交互的...

    json转换jsonschema

    而JSON Schema则是一个JSON格式的规范,用于定义JSON数据的结构和限制,类似于XML Schema,它为JSON数据提供了验证规则,确保数据的准确性和一致性。 在JavaScript开发中,有时我们需要将JSON对象转换为JSON Schema...

    json paser 属于idea插件 用于解析json

    json paser 属于idea插件 用于解析json json paser 属于idea插件 用于解析json json paser 属于idea插件 用于解析json json paser 属于idea插件 用于解析json json paser 属于idea插件 用于解析json json paser 属于...

    MFC使用json11解析JSON

    json11::Json jsonObject = json11::Json::parse(jsonString); if (jsonObject.is_object()) { // 处理解析成功的对象 } else { // 处理解析错误 } ``` 一旦你有了JSON对象,可以访问其成员或进行修改。例如,...

    JSON的学习总结(总结+源码)

    JSON的学习涉及其基本语法、JSONObject和JSONArray的使用,以及在JavaScript中的解析方法。理解这些知识点对于开发Web应用至关重要,无论你是服务器端开发者还是前端开发者。正确地处理和解析JSON数据能有效提升应用...

    新手学习JSON最佳资料

    理解JSON的基本结构和类型,以及在JQuery中如何操作JSON,对于新手来说是学习Web开发的基础知识。通过实践,你可以掌握如何从服务器获取JSON数据,将其解析并显示在前端页面上,以及如何进行序列化和反序列化操作。

    最好用的c++json库 nlohmann json源代码

    最好用的c++json库 nlohmann json源代码最好用的c++json库 nlohmann json源代码最好用的c++json库 nlohmann json源代码最好用的c++json库 nlohmann json源代码最好用的c++json库 nlohmann json源代码最好用的c++json...

    Json详细学习in Java

    通过深入学习这三种技术,开发者可以更好地理解JSON在Java中的应用,并根据项目需求灵活选择合适的方法来处理JSON数据。这些技能对于任何Java Web开发者来说都是必不可少的。在提供的压缩包文件中,可能包含了示例...

    四轧json学习学习111111

    四轧json学习学习111111

    JSON编程入门学习教材

    JSON,全称JavaScript Object Notation,是一种轻量级的数据交换格式。它的设计目标是简洁且易于阅读和编写,同时也方便机器解析和生成。JSON被广泛应用于服务器与JavaScript之间的数据交互,尤其是在AJAX...

    jsonview json 高亮显示插件

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web应用程序之间传递数据。它基于JavaScript的一个子集,具有易于人阅读和编写,同时也易于机器解析和生成的特点。JSON格式通常由键值对...

    身份证号码前6位籍贯表JSON格式

    身份证号码前6位籍贯表JSON格式

    json-lib 学习笔记 分享下

    这个学习笔记主要围绕`json-lib`的使用方法和关键特性进行阐述。 首先,`json-lib`支持多种Java对象到JSON的转换,包括基本类型、数组、集合、Map以及自定义的Java类。例如,你可以通过以下方式将一个HashMap转换为...

Global site tag (gtag.js) - Google Analytics