JSON数据: 是Java script Object Notation 的简称。JSON是用于存储和交换数据的语法。JSON是使用JavaScript对象表示法编写的文本。

在浏览器和服务器之间交换数据时,数据只能是文本,JSON是文本,我们可以将任何JavaScript对象转换为JSON,然后将JSON发送到服务器,也可以将从服务器接收到的任何JSON转换为JavaScript 对象。这样,我们就可以将数据作为JavaScript对象使用,而无需复杂的解析和转换。

JSON语法规则:数据以名称/值对的形式,key value 对组成("Key": value),冒号分割 ,数据以逗号分隔;大括号容纳对象;方括号容纳数组({}表示对象 []表示数组 可以嵌套)

如果数据存储在JavaScript对象中,则可以将该对象转换为JSON,然后将其发送到服务器:

varmyObj = {name:"John",age:31, city:"New York"};

varmyJSON =JSON.stringify(myObj);

window.location="demo_json.php?x="+ myJSON;

如果收到JSON格式的数据,则可以将其转换为JavaScript对象:

// Storing data:

myObj = {name: "John", age: 31, city: "New York"};

myJSON = JSON.stringify(myObj);

localStorage.setItem("testJSON", myJSON);

// Retrieving data:

text = localStorage.getItem("testJSON");

obj =JSON.parse(text);

document.getElementById("demo").innerHTML= obj.name;

当存储数据时,数据必须是某种格式,并且无论您选择存储在何处,文本始终是合法格式之一。JSON使得将JavaScript对象存储为文本成为可能。

JSON代表JavaScript对象符号;JSON是一种轻量级的数据交换格式;JSON是“自我描述”的,易于理解。

JSON使用JavaScript语法,但JSON格式仅是文本;可以通过任何编程语言读取文本并将其用作数据格式。

为什么要使用JSON?由于JSON格式仅是文本,因此可以轻松地与服务器之间进行发送和发送,并且可以通过任何编程语言将其用作数据格式。JavaScript具有内置功能,可以将以JSON格式编写的字符串转换为本地JavaScript对象:

JSON.parse()

如果以JSON格式从服务器接收数据,则可以像使用其他任何JavaScript对象一样使用它。

在JSON中,值必须是以下数据类型之一:

一个字符串/一个号码/一个对象(JSON对象)/数组/一个布尔值/空值

JSON值不能是以下数据类型之一:

一个功能/一个时间/未定义

JSON字串:JSON中的字符串必须用双引号引起来。

{“ name”:“ John”}

JSON数字:JSON中的数字必须是整数或浮点数。

{“年龄”:30}

JSON对象:JSON中的值可以是对象。

{

“员工”:{“名称”:“约翰”,“年龄”:30,“城市”:“纽约”}

}

JSON中作为值的对象必须遵循与JSON对象相同的规则。

JSON数组:JSON中的值可以是数组。

{

“雇员”:[“约翰”,“安娜”,“彼得”]

}

JSON布尔值:JSON中的值可以为true / false。

{“ sale”:true}

JSON中的值可以为null: {“ middlename”:null}JSON Data Types - REST API Tutorial​restfulapi.net

JSON在某些方面与XML类似:JSON和XML都是“自我描述”(人类可读)/ JSON和XML都是分层的(值内的值)/ JSON和XML均可被许多编程语言解析和使用/ JSON和XML都可以使用XMLHttpRequest来获取。

JSON与XML不同:JSON不使用结束标记/JSON更短/ JSON读写更快/ JSON可以使用数组。

最大的区别是:XML必须使用XML解析器进行解析。 JSON可以通过标准JavaScript函数进行解析。

为什么JSON比XML更好:XML比JSON解析要困难。/ JSON被解析为现成的JavaScript对象。对于AJAX应用程序,JSON比XML更快,更容易。

JSON的常见用法是与Web服务器交换数据。从Web服务器接收数据时,数据始终是字符串。使用JSON.parse()进行解析数据,该数据成为JavaScript对象。https://www.w3schools.com/JS/js_json_parse.asp​www.w3schools.com

将数据发送到Web服务器时,数据必须是字符串。使用JSON.stringify()将JavaScript对象转换为字符串。https://www.w3schools.com/JS/js_json_stringify.asp​www.w3schools.com

JSON对象用花括号{}包围。JSON对象以键/值对形式编写。键必须是字符串,值必须是有效的JSON数据类型(字符串,数字,对象,数组,布尔值或null)。 值之间用冒号分隔。每个键/值对之间用逗号分隔。

JSON的常见用法是从Web服务器读取数据,并在Web页面中显示数据。如何在客户端和PHP服务器之间交换JSON数据。使用PHP:PHP具有一些内置函数来处理JSON.PHP中的对象可以通过使用PHP函数json_encode()转换为JSON。

JSONP是一种发送JSON数据而无需担心跨域问题的方法.JSONP不使用XMLHttpRequest对象,而是使用

推荐网站:JSON模式是用于验证JSON数据结构的强大工具。Understanding JSON SchemaJSON - DataTypes推荐网站:JSON模式是用于验证JSON数据结构的强大工具。Understanding JSON SchemaUnderstanding JSON Schema​json-schema.orgJSON - DataTypes​www.tutorialspoint.com

mysql 复杂类型_MySQL 复杂数据类型之JSON数据相关推荐

  1. mysql option 类型_mysql之数据类型与表操作

    关系数据库的注释 -- 单行注释 /* 多行注释 */ 数据类型 数值 整数 只能保存整数,如果是小数,则自动四舍五入取整. mediumint smallint tinyint(6) zerofil ...

  2. mysql 整数类型_MySQL的数据类型

    1.整数 TINYINT: 8 bit 存储空间 SMALLINT: 16 bit 存储空间 MEDIUMINT: 24 bit 存储空间 INT: 32 bit 存储空间 BIGINT: 64 bi ...

  3. mysql unit类型_mysql入门-数据类型(二)

    mysql入门-数据类型(二) 今天说一下mysql的数据类型日期,mysql的日期类型有date.datetime.time.year.timestamp. date其实就是日期,例如2019年07 ...

  4. ajax返回数据类型为JSON数据的处理

    ajax返回数据类型为JSON数据的处理 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &qu ...

  5. 11月13日上午ajax返回数据类型为JSON数据的处理

    ajax返回数据类型为JSON数据的处理 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &qu ...

  6. mysql数据库 set类型_MYSQL数据库数据类型

    07.14自我总结 MYSQL数据库数据类型 一.整数类型和浮点数典型 1.有符号/没符号 对于整数和负整数来说,默认情况下是有符号范围的 默认是有符号 有符号和没符号其实就是有没有包括负数,有符号是 ...

  7. mysql 命令类型_mysql 基本命令(3)-数据类型和运算符

    一.数值类型 1.数据类型有:数值类型.日i期类型.字符串类型. 2.int(20),int 指整数的取值范围,里面的参数20,只是表示数据显示的宽度.显示宽度和数据类型的取值范围是无关的.显示宽度只 ...

  8. mysql 负数类型_MySQL数据类型详解

    MySQL数据类型,可以被分为3类:数值类型.日期和时间类型以及字符串(字符)类型 方括号("["和"]")指出可选的类型修饰符的部分 M 指出最大的显示尺寸. ...

  9. mysql decimal 类型_MySQL数据类型DECIMAL用法详解

    MySQLDECIMAL数据类型用于在数据库中存储精确的数值.我们经常将DECIMAL数据类型用于保留准确精确度的列,例如会计系统中的货币数据. 要定义数据类型为DECIMAL的列,请使用以下语法: ...

  10. mysql yintint类型_MySQL服务器2 被嫌弃的胖子

    1.sql的基本语法 对数据库 create database db1; 创建数据库 对表: create database t1(id int,name char(10)); 创建表 show cr ...

最新文章

  1. 视频解码基础知识(二)
  2. 网络技术工程师专业核心 | 网络技术工程师就业方向
  3. python PyQt5.QtWidgets.QApplication类(sys.argv)(app应用对象类)
  4. Android—View事件分发与View子类
  5. 贷款中介市场要变天了吗?
  6. python文本替换 数据库_在Python中使用ASCII文件中的注释查找/替换子...
  7. 从自监督到全监督!Google 提出新损失函数SupCon,准确率提升2%!
  8. 深入理解Js中的this
  9. 运放组成的吉他放大电路_如何通过5个步骤构建开放式硬件吉他放大器
  10. 灌水导论——灌水法初步
  11. 使用反射获得jar包中的类、方法、参数、返回值类型,然后动态加载jar包运行方法
  12. 点云的密度 曝光时间_200倍的提速!华人博士生提出大场景三维点云语义分割新框架...
  13. Navicat for mysql 远程连接 mySql数据库10061、1045错误
  14. ArcGIS for Desktop入门教程_第六章_用ArcMap制作地图 - ArcGIS知乎-新一代ArcGIS问答社区...
  15. 武汉大学研究生院计算机导师,求武汉大学计算机学院研究生导师信息
  16. 服务器上怎么开启vt虚拟化功能,如何开启VT虚拟化功能
  17. mysql查出同义词_在数据库mysql中存储和检索同义词的最佳方法
  18. java 写字板源代码_基于JAVA的模拟写字板的设计与实现(含录像)
  19. RNA-seq流程学习笔记(4)-使用FastQC软件对fastq格式的数据进行质量控制
  20. win10在此计算机上找不到系统映像,解决Win10系统Windows找不到文件确定是否正确...

热门文章

  1. [转载] 柯受良-柯受良飞跃黄河
  2. 4.从Paxos到Zookeeper分布式一致性原理与实践--- Zookeeper 与 Paxos
  3. 2018-2019-2 网络对抗技术 20165322 Exp5 MSF基础应用
  4. [加密]SSL/TLS原理详解
  5. 浅谈压缩感知(二十二):压缩感知重构算法之正则化正交匹配追踪(ROMP)
  6. 干货----003----乱码解决方法
  7. cocos2d-iphone 区分ipad和iphone
  8. dedecms注入漏洞 5.3 5.5
  9. SVN—如何安装SVN服务器端软件
  10. 教你一行代码解决 Git报错 fatal refusing to merge unrelated histories