JSON 安装使用教程

一、JSON 简介

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它广泛应用于前后端数据通信、配置文件、API 传输等场景。


二、JSON 是否需要安装?

不需要安装!

JSON 是一种数据格式,不是库,也不是软件,它已被 JavaScript、Python、Java、C# 等几乎所有主流语言原生支持。


三、JSON 语法规则

{"name": "小奇","age": 30,"isStudent": false,"hobbies": ["阅读", "写作"],"address": {"city": "北京","code": 100000}
}

基本规则:

  • 数据是以键值对形式存在
  • 字符串用双引号包裹
  • 键名必须是字符串
  • 不允许注释
  • 支持嵌套对象和数组

四、在各语言中的使用方式

4.1 JavaScript

let jsonStr = '{"name":"小奇","age":25}';
let obj = JSON.parse(jsonStr); // 转为对象
console.log(obj.name); // 小奇let newStr = JSON.stringify(obj); // 转回字符串

4.2 Python

import jsonjson_str = '{"name": "小奇", "age": 25}'
data = json.loads(json_str)
print(data["name"])  # 小奇new_str = json.dumps(data, ensure_ascii=False)

4.3 Java

import org.json.JSONObject;String jsonStr = "{"name":"小奇", "age":25}";
JSONObject obj = new JSONObject(jsonStr);
System.out.println(obj.getString("name")); // 小奇

五、常见 JSON 应用场景

  • 浏览器与服务器的数据交换(如 AJAX / Fetch)
  • RESTful API 返回格式
  • 配置文件(如 package.json, tsconfig.json
  • 数据缓存与持久化

六、在线 JSON 工具推荐

  • JSON 格式化校验
  • JSON 编辑器
  • JSON 转表格

七、常见问题

Q1: JSON 中能加注释吗?

不能,JSON 不支持注释。如果需要配置文件支持注释,推荐使用 YAML 或 JSON5。

Q2: JSON.parse 报错?

确保 JSON 字符串语法合法,例如:

  • 使用双引号
  • 不允许末尾逗号
  • 不允许注释

八、JSON 与其他格式对比

格式可读性体积小支持复杂结构是否支持注释
JSON
XML
YAML

九、学习资源推荐

  • MDN JSON 文档
  • JSON.org 官方网站
  • 菜鸟教程 JSON 教程

本文由“小奇Java面试”原创发布,转载请注明出处。

可以搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/87133.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/87133.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

十大网络协议

十大网络协议 标题1. HTTP(HyperText Transfer Protocol,超文本传输协议)标题2. HTTPS(Secure Hypertext Transfer Protocol,安全超文本传输协议)标题3. HTTP/3标题4. TCP(Transmission Control…

【语音告警】博灵智能语音报警灯Modbus TCP触发告警实例-语音报警灯|声光报警器|网络信号灯

功能说明 本文将以Python代码为例,讲解如何通过Python代码调用博灵语音通知终端A4实现声光语音告警。 本代码实现Python触发Modbus写多寄存器和写单寄存器实现调用通知终端模板播报功能(通知终端内置TTS语音合成技术,本案例不讲解如何文本转…

摄像头 rtsp数据量 和正常数据流有什么区别

摄像头RTSP数据流和正常数据流(如HTTP传输的普通文件或网页数据)在多个方面存在显著差异,主要体现在协议特性、数据量、实时性、应用场景等方面。以下是具体对比: 1. 协议与传输方式 RTSP流: 实时流协议(R…

深入理解装饰器模式:动态扩展对象功能的灵活设计模式

深入理解装饰器模式:动态扩展对象功能的灵活设计模式 🌟 嗨,我是IRpickstars! 🌌 总有一行代码,能点亮万千星辰。 🔍 在技术的宇宙中,我愿做永不停歇的探索者。 ✨ 用代码丈量世界…

141.在 Vue 3 中使用 OpenLayers Link 交互:把地图中心点 / 缩放级别 / 旋转角度实时写进 URL,并同步解析显示

本文分享一个前端小技巧:借助 OpenLayers 的 Link 交互 在浏览器地址栏实时记录地图状态,同时把这些参数解析出来展示在页面上。 ✨ 双向同步:拖动、缩放、旋转地图时,URL 自动更新;手动修改 URL 或后退 / 前进&#x…

数字人的形象与内容,虚拟形象背后的权益暗战

(首席数据官高鹏律师数字经济团队创作,AI辅助) 当某科技公司的虚拟偶像在直播间收获百万打赏时,当某品牌的数字代言人形象被篡改成表情包全网传播时,当网红博主的AI分身开始替代真人直播带货时,一场关于数…

【python】pdf拆成图片,加中文,再合成pdf

前期搞了个pdf加页脚,但是搞了半天中文加不了,就换了个思路。 直接说结论,pdf拆成图片,加中文,再合成pdf,会导致pdf模糊。 import os import fitz # PyMuPDF from PIL import Image, ImageDraw, ImageFon…

分布式爬虫数据存储开发实战

分布式爬虫存储的核心矛盾在于:既要高吞吐又要强一致性,还要避免重复。比如Kafka虽然吞吐高但无法去重,Redis去重快但容量有限。所以我们可能低估了状态同步的复杂度——比如暂停爬虫时如何保证内存中的URL状态不丢失。 分布式爬虫的数据存储…

探秘阿里云Alibaba Cloud Linux:云时代的操作系统新宠

引言:云时代的操作系统变革 在云计算技术蓬勃发展的当下,企业的数字化转型进程被极大地加速,而作为云计算底层支撑的操作系统,也迎来了前所未有的变革与挑战。传统操作系统在应对云计算环境中的大规模资源调度、高弹性扩展以及安…

使用pyflink进行kafka实时数据消费

目录 背景 代码demo 踩坑记录 1、kafka连接器,kafka客户端jar包找不到 2、java模块系统访问限制 3、执行demo任务,一直报错连接kafka topic超时 总结 背景 实际项目中经常遇到source是kafka,需要实时消费kafka某个topic中的数据&#x…

软件测试理论框架与发展:分类、原则与质量保障策略

第一章 一、计算机软件的发展分类 早期软件开发的特点: 软件规模小、复杂程度低、开发过程不规范 测试的情况: 测试等同于调试 目的纠正软件的已经知道的故障 投入少,介入晚 成为一种发现软件的活动(1957) 测试不等于…

未知威胁攻击原理和架构

大家读完觉得有帮助记得关注和点赞!!! 未知威胁(Unknown Threats)指利用零日漏洞、合法工具滥用、高级逃逸技术等**绕过传统特征检测**的攻击,其核心在于**动态对抗防御体系的认知盲区**。以下从攻击原理、…

基于Netty-WebSocket构建高性能实时通信服务

引言:WebSocket在现代应用中的重要性 在当今实时交互应用盛行的时代,WebSocket协议已成为实现双向通信的核心技术。相比传统的HTTP轮询,WebSocket提供了: 真正的全双工通信极低的延迟(毫秒级)高效的连接管…

咸虾米项目总结1--const用法

在 UniApp(或 Vue 3)中,声明一个空对象可使用下面这2种写法: // 写法1 const a ref(null);// 写法2 const a ref({}); 在UniApp中,const a ref()用法概述: 用途: 创建一个响应式引用&#x…

在mac下手动编译迁移的android版webrtc组件

我原先使用的android版webrtc是在linux下编译的,现在因为某些原因需要把整个库迁移到mac下编译。 把代码迁移完后,正常是需要通过gclient sync 重新构建编译环境,但是由于网络限制等方面原因,会导致完成的比较慢。 在摸索一阵后…

Linux 命令:mkdir

Linux mkdir 命令详细教程 一、mkdir 命令的基本功能 mkdir(Make Directory)是 Linux 系统中用于创建新目录(文件夹)的基础命令。它支持一次性创建单个或多个目录,以及递归创建多层目录结构,是文件系统操…

Django 数据迁移全解析:makemigrations migrate 常见错误与解决方案

1. 迁移机制与底层原理 在 Django 中,ORM(Object-Relational Mapping)是连接模型(Model)和数据库结构的桥梁。Django 鼓励开发者通过编写 Python 类(模型)来定义业务数据结构,而不是…

SuperGlue:使用图神经网络学习特征匹配

摘要 本文提出了 SuperGlue,一种神经网络,用于通过联合寻找对应关系并排除不可匹配点来匹配两组局部特征。匹配结果通过求解一个可微的最优传输问题来估计,该问题的代价由一个图神经网络预测。我们引入了一种基于注意力的灵活上下文聚合机制…

ssh -T git@github.com失败后解决方案

这个错误表示你的 SSH 连接无法到达 GitHub 服务器。以下是详细解决方案,按照优先级排序: 首选解决方案:使用 SSH over HTTPS(端口 443) 这是最有效的解决方案,因为许多网络会阻止 22 端口: …

从苹果事件看 ARM PC市场的未来走向

最近,苹果宣布部分搭载 Intel 处理器的 Mac 不再支持最新的 macOS 系统更新,这一消息犹如一颗石子投入平静湖面,激起层层涟漪。它不仅让 Intel 芯片在 Mac 产品线上彻底成为历史,也促使我们重新审视 PC 行业的发展脉络&#xff0c…