当前位置: 首页 > news >正文

JSON 数据类型

JSON 数据类型

JSON 格式支持以下数据类型:

类型描述
数字型(Number)JavaScript 中的双精度浮点型格式
字符串型(String)双引号包裹的 Unicode 字符和反斜杠转义字符
布尔型(Boolean)true 或 false
数组(Array)有序的值序列
值(Value)可以是字符串,数字,true 或 false,null 等等
对象(Object)无序的键:值对集合
空格(Whitespace)可用于任意符号对之间
null

数字型

  • JavaScript 中的双精度浮点型格式,取决于实现。
  • 不能使用八进制和十六进制格式。
  • 在数字中不能使用 NaN 和 Infinity。

下表展示了数字类型:

类型描述
整形(Integer)数字1-9,0和正负数
分数(Fraction)分数,比如 .3,.9
指数(Exponent)指数,比如 e,e+,e-,E,E+,E-

语法:

var json-object-name = { string : number_value, .......}

示例:

下面的示例展示了数字类型,其值不应该使用引号包裹:

var obj = {marks: 97}

字符串型

  • 零个或多个双引号包裹的 Unicode 字符以及反斜杠转义序列。
  • 字符就是只有一个字符的字符串,长度为 1。

下表展示了字符串类型:

类型描述
"双引号
\反斜线
/斜线
b退格符
f换页符
n换行符
r回车符
t水平制表符
u四位十六进制数字

语法:

var json-object-name = { string : "string value", .......}

示例:

下面的示例展示了字符串数据类型:

var obj = {name: 'Amit'}

布尔型

它包含 true 和 false 两个值。

语法:

var json-object-name = { string : true/false, .......}

示例:

var obj = {name: 'Amit', marks: 97, distinction: true}

数组

  • 它是一个有序的值集合。
  • 使用方括号闭合,这意味着数组以 [ 开始,以 ] 结尾。
  • 值使用 ,(逗号)分割。
  • 数组索引可以以 0 或 1 开始。
  • 当键名是连续的整数时应该使用数组。

语法:

[ value, .......]

示例:

下面的示例展示了一个包含多个对象的数组:

{"books": [{ "language":"Java" , "edition":"second" },{ "language":"C++" , "lastName":"fifth" },{ "language":"C" , "lastName":"third" }]
}

对象

  • 它是一个无序的名/值对集合。
  • 对象使用大括号闭合,以 '{' 开始,以 '}' 结尾。
  • 每个名称后面都跟随一个 ':'(冒号),名/值对使用 ,(逗号)分割。
  • 键名必须是字符串,并且不能同名。
  • 当键名是任意字符串时应该使用对象。

语法:

{ string : value, .......}

示例:

下面的例子展示了对象:

{"id": "011A","language": "JAVA","price": 500,
}

空格

可以在任意一对符号之间插入。可以添加用来让代码更可读。下面的例子展示了使用空格和不使用空格的声明:

语法:

{string:"   ",....}

示例:

var i= "   sachin";
var j = "  saurav"

null

意味着空类型。

语法:

null

示例:

var i = null;if(i==1) {document.write("<h1>value is 1</h1>");  
} else {document.write("<h1>value is null</h1>");
}

JSON 值

包括:

  • 数字(整型和浮点型)
  • 字符串
  • 布尔值
  • 数组
  • 对象
  • null

语法:

String | Number | Object | Array | TRUE | FALSE | NULL

示例:

var i =1;
var j = "sachin";
var k = null;

相关文章:

JSON 数据类型

JSON 数据类型 JSON 格式支持以下数据类型&#xff1a; 类型描述数字型&#xff08;Number&#xff09;JavaScript 中的双精度浮点型格式字符串型&#xff08;String&#xff09;双引号包裹的 Unicode 字符和反斜杠转义字符布尔型&#xff08;Boolean&#xff09;true 或 fal…...

Python函数简介

Python是一种高级编程语言&#xff0c;它的函数是其中一个非常重要的特性。在程序中&#xff0c;函数是一段被命名的代码块&#xff0c;它可以接受输入并且返回输出。本篇文章将介绍Python函数的基本概念、定义、调用和参数。 基本概念 在Python中&#xff0c;函数是由def关键…...

一文读懂 mysql 为什么要两阶段提交以及两阶段提交原理

文章目录 为什么要两阶段提交redo log与binlog两份日志之间的逻辑不一致,会出现什么问题?两阶段提交是怎么保证逻辑一致的呢?当 binlog 写完,redo log 还没 commit 前发生 crash,那崩溃恢复后 MySQL 如何处理?redo 与 binlog 的刷盘时机MySQL 的双 1 配置能否只用 redo l…...

启动Hadoop报错【Error: JAVA_HOME is not set and could not be found.】

当用了一下午从0安装上Hadoop兴奋的启动的时候&#xff01; Error: JAVA_HOME is not set and could not be found. 他告诉我JAVA_HOME 没被找到&#xff1f; 我明明安装了java的&#xff0c;为什么找不到&#xff1f; java -version看了下发现是没问题的 解决&#xff1a; 后…...

《MySQL系列-InnoDB引擎35》索引与算法-B+树索引的使用

B树索引的使用 1 不同应用中B树索引的使用 在OLTP中&#xff0c;B树索引建立后&#xff0c;对该索引的使用应该只是通过该索引取得表中少部分的数据。这时建立B树索引才是有意义的&#xff0c;否则即使建立了&#xff0c;优化器也可能不选择使用索引。 在OLAP中&#xff0c;…...

【EHub_tx1_tx2_E100】不止科技NVISTAR ROC 300激光雷达Ubuntu18.04+ROS1ROS2 评测

介绍NVISTAR 的二维DTOF激光雷达 ROC 300在EHub_tx1_tx2_E100载板&#xff0c;TX1核心模块环境&#xff08;Ubuntu18.04&#xff09;下测试ROS1驱动和ROS2的驱动&#xff0c;打开使用RVIZ 查看点云数据&#xff0c;本文的前提条件是你的TX1里已经安装了ROS1版本&#xff1a;Mel…...

C语言函数大全--d开头的函数

C语言函数大全 本篇介绍C语言函数大全–d开头的函数 1. detectgraph 1.1 函数说明 函数声明函数功能void detectgraph(int *graphdriver, int *graphmode);通过检测硬件确定图形驱动程序和模式 1.2 演示示例 #include <graphics.h> #include <stdlib.h> #incl…...

基于springboot实现福聚苑社区团购演示【项目源码】

基于springboot实现福聚苑社区团购演示开发语言&#xff1a;Java 框架&#xff1a;springboot JDK版本&#xff1a;JDK1.8 服务器&#xff1a;tomcat7 数据库&#xff1a;mysql 5.7 数据库工具&#xff1a;Navicat11 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#…...

动静态库的制作

文章目录&#xff1a;什么是程序库&#xff1f;动态链接和静态链接动静态库的认识静态库的创建与使用创建使用动态库的创建与使用创建使用什么是程序库&#xff1f; 程序库&#xff1a;一般是软件作者为了发布方便、替换方便或二次开发目的&#xff0c;而发布的一组可以单独与应…...

QMS-云质-质量软件-客诉,为什么应该用两段式来处理

-云质QMS原创文章&#xff0c;转载请注明来源- 客户满意度是决定企业是否能够基业长青的关键因素之一。 如果客诉处理的不好&#xff0c;会极大影响客户的满意程度。 通常处理客诉分为两个阶段。 第一个阶段是快反遏制&#xff0c;想方设法快速答复和解决客户提出的问题&…...

JS:关于邮箱的正则表达式及规则

常用正则表达式—邮箱&#xff08;Email&#xff09; 要验证一个字符串是否为邮箱的话&#xff0c;首先要了解邮箱账号的格式。我尝试过在网上找出一个标准的格式&#xff0c;但是很遗憾我没有找到。我也尝试使用RFC标准来判断邮箱的格式&#xff0c;但是也没有结果。网上些博…...

两句话,ChatGPT帮我写一个打飞机的游戏

大家好&#xff0c;我是全村的希望今天的主题是让 chatGPT 来帮我们写一个打飞机的游戏记得我刚学 Python 的时候&#xff0c;看的那本很经典的入门书《Python 编程&#xff1a;从入门到实践》&#xff0c;里面就有小项目就是教你编写一个打飞机的游戏我那时候是对着书一个一个…...

计算机图形学14:三维图形的投影变换

作者&#xff1a;非妃是公主 专栏&#xff1a;《计算机图形学》 博客地址&#xff1a;https://blog.csdn.net/myf_666 个性签&#xff1a;顺境不惰&#xff0c;逆境不馁&#xff0c;以心制境&#xff0c;万事可成。——曾国藩 文章目录专栏推荐专栏系列文章序一、三维图形的投…...

【ChatGPT4】王老师零基础《NLP》(自然语言处理)第二课

我的已经在起、点开了书《王老师带我成为救世主》&#xff0c;那个更新及时 &#xff08;1&#xff09;---------------------------------------------------------------------------------------- 我&#xff1a; 1我/喜欢/吃/苹果&#xff0c;因为/它/们/很/好吃。 2 Th…...

设计模式之中介者模式在前端的应用

文章目录中介者模式在前端的应用场景1.实现组件之间的松耦合2. 实现异步请求的协同3. 实现事件驱动的编程模型4. 实现复杂交互的协调总结中介者模式在前端的应用场景 中介者模式是一种常见的设计模式&#xff0c;它可以将对象之间的通信集中处理&#xff0c;从而提高系统的可维…...

2023年还能入行程序员吗?工作3年以上的黑马老学员怎么说?

很多人觉得&#xff0c;毕业3年&#xff0c;不过是毕业第1年的重复&#xff0c;键盘Ctrl、C和V键磨损更严重了。妥妥属于光涨年龄&#xff0c;不涨经验&#xff1b;只涨体重&#xff0c;不涨工资…… 他们不理解&#xff0c;为什么同样的起跑线&#xff0c;有人发展神速&#…...

接收机的噪声来源与噪声分析

噪声分类 射频接收机中的噪声主要可以分为两类&#xff1a;内部噪声和外部噪声。 内部噪声 内部噪声主要来自于接收机内部的放大器、混频器、本振等元件所产生的噪声。根据不同的产生机制&#xff0c;内部噪声可以分为以下几类&#xff1a; a. 电感噪声&#xff1a;由于电感…...

Android FrameWork——SystemServer

Android系统在启动的时候有两个非常重要的进程&#xff0c;一个是Zygote&#xff0c;另一个就是system_server。SystemServer是系统用来启动service的入口&#xff0c;比如我们常用的AMS&#xff0c;WMS&#xff0c;PMS等等都是由它创建的。 system_server进程的启动 system_…...

婴儿推车ASTMF883测试

1.cpc认证是总称&#xff0c;cpc认证下边有很多的标准&#xff0c;常见的有ASTM F963&#xff08;铅含量&#xff09;、CPSIA&#xff08;邻苯8P&#xff09;、ASTM F833&#xff08;婴儿车&#xff09;等&#xff1b; 2.婴儿车ASTM认证是什么 2019年8月2日&#xff0c;美国消…...

射频接收机概述

接收机架构 射频接收机架构是指电子设备中用于接收无线电信号的部分。它通常由前置放大器、中频放大器、混频器、局部振荡器和带通滤波器等组成。以下是一个基本的射频接收机架构&#xff1a; 前置放大器&#xff1a;前置放大器的作用是放大接收天线接收到的微弱无线电信号&am…...

ios苹果系统,js 滑动屏幕、锚定无效

现象&#xff1a;window.addEventListener监听touch无效&#xff0c;划不动屏幕&#xff0c;但是代码逻辑都有执行到。 scrollIntoView也无效。 原因&#xff1a;这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作&#xff0c;从而会影响…...

push [特殊字符] present

push &#x1f19a; present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中&#xff0c;push 和 present 是两种不同的视图控制器切换方式&#xff0c;它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...

华为OD机试-最短木板长度-二分法(A卷,100分)

此题是一个最大化最小值的典型例题&#xff0c; 因为搜索范围是有界的&#xff0c;上界最大木板长度补充的全部木料长度&#xff0c;下界最小木板长度&#xff1b; 即left0,right10^6; 我们可以设置一个候选值x(mid)&#xff0c;将木板的长度全部都补充到x&#xff0c;如果成功…...

Chrome 浏览器前端与客户端双向通信实战

Chrome 前端&#xff08;即页面 JS / Web UI&#xff09;与客户端&#xff08;C 后端&#xff09;的交互机制&#xff0c;是 Chromium 架构中非常核心的一环。下面我将按常见场景&#xff0c;从通道、流程、技术栈几个角度做一套完整的分析&#xff0c;特别适合你这种在分析和改…...

Qt学习及使用_第1部分_认识Qt---Qt开发基本流程

前言 学以致用,通过QT框架的学习,一边实践,一边探索编程的方方面面. 参考书:<Qt 6 C开发指南>(以下称"本书") 标识说明:概念用粗体倾斜.重点内容用(加粗黑体)---重点内容(红字)---重点内容(加粗红字), 本书原话内容用深蓝色标识,比较重要的内容用加粗倾…...

ubuntu清理垃圾

windows和ubuntu 双系统&#xff0c;ubuntu 150GB&#xff0c;开发用&#xff0c;基本不装太多软件。但是磁盘基本用完。 1、查看home目录 sudo du -h -d 1 $HOME | grep -v K 上面的命令查看$HOME一级目录大小&#xff0c;发现 .cache 有26GB&#xff0c;.local 有几个GB&am…...

【网络安全】fastjson原生链分析

fastjson 原生链 前言 说起 fastjson 反序列化&#xff0c;大部分的利用都是从 type 把 json 串解析为 java 对象&#xff0c;在构造方法和 setter、getter 方法中&#xff0c;做一些文件或者命令执行的操作。当然&#xff0c;在 fastjson 的依赖包中&#xff0c;也存在着像 …...

MySQL-运维篇

运维篇 日志 错误日志 错误日志是 MySQL 中最重要的日志之一&#xff0c;它记录了当 mysqld 启动和停止时&#xff0c;以及服务器在运行过程中发生任何严重错误时的相关信息当数据库出现任何故障导致无法正常使用时&#xff0c;建议首先查看此日志。 该日志是默认开启的&am…...

Mac版Visual Studio Code Copilot 无法使用的解决方法

1 app文件夹删除Visual Studio Code 2 终端里面 输入以下指令&#xff0c;删除各种缓存 rm -fr ~/Library/Preferences/com.microsoft.VSCode.helper.plist rm -fr ~/Library/Preferences/com.microsoft.VSCode.plist rm -fr ~/Library/Caches/com.microsoft.VSCode rm -f…...

C#和C++在编译过程中的文件区分

1. .h是头文件&#xff08;Header File&#xff09; 用来 声明类、函数、常量等。 通常不包含实际实现&#xff0c;只是“定义接口” // 示例&#xff1a;math_utils.h#pragma once int add(int a, int b); //定义函数名2. .cpp是源文件&#xff08;Source File&…...