JSON基础知识

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人类阅读和编写,也易于机器解析和生成。JSON 常用于客户端和服务器之间的数据传输。以下是 JSON 的基础知识:

JSON 的结构

JSON 的数据结构主要包括两种类型:

  1. 对象(Object)

    • 由键值对组成,键(key)是字符串,值(value)可以是任何 JSON 数据类型。
    • 对象用花括号 {} 包裹。
    • 键值对之间用逗号分隔,键和值用冒号 : 分隔。

    示例:

    javascript 复制代码
    {
      "name": "Alice",
      "age": 25,
      "isStudent": true,
      "courses": ["Math", "Science"],
      "address": {
        "street": "123 Main St",
        "city": "Wonderland"
      }
    }
  2. 数组(Array)

    • 由多个值组成,值可以是任何 JSON 数据类型。
    • 数组用方括号 [] 包裹,值之间用逗号分隔。

    示例:

    javascript 复制代码
    [
      "Apple",
      "Banana",
      "Cherry"
    ]

JSON 数据类型

JSON 支持以下数据类型:

  • 字符串(String) :用双引号 " 包裹,可以包含 Unicode 字符和转义字符。

    "Hello, World!"

  • 数字(Number):可以是整数或浮点数,不支持前导零。

    42 3.14

  • 布尔值(Boolean)truefalse

    true false

  • 对象(Object):如上所述。

    { "key": "value" }

  • 数组(Array):如上所述。

    [1, 2, 3]

  • 空值(null):表示空值。

    null

JSON 的使用

  • 解析 JSON:将 JSON 字符串转换为 JavaScript 对象。

    javascript 复制代码
    var jsonString = '{"name": "Alice", "age": 25}';
    var obj = JSON.parse(jsonString);
    console.log(obj.name); // 输出 "Alice"
  • 生成 JSON:将 JavaScript 对象转换为 JSON 字符串。

    javascript 复制代码
    var obj = { name: "Alice", age: 25 };
    var jsonString = JSON.stringify(obj);
    console.log(jsonString); // 输出 '{"name":"Alice","age":25}'

JSON 的特点

  • 简洁:JSON 结构简单,易于理解和编写。
  • 跨语言:JSON 格式在不同编程语言之间广泛支持。
  • 可读性:JSON 语法类似于 JavaScript 对象字面量,易于人类阅读。

JSON 是现代 Web 开发中数据交换的标准格式,广泛用于 API 通信、配置文件、数据存储等场景。

相关推荐
万少6 分钟前
使用Trae轻松安装openclaw的教程-附带免费token
前端·openai·ai编程
颜酱22 分钟前
一步步实现字符串计算器:从「转整数」到「带括号与优化」
javascript·后端·算法
浪浪山_大橙子22 分钟前
OpenClaw 十分钟快速,安装与接入完全指南 - 推荐使用trae 官方 skills 安装
前端·人工智能
忆江南25 分钟前
iOS 可视化埋点与无痕埋点详解
前端
离开地球表面_9927 分钟前
金三银四程序员跳槽指南:从简历到面试再到 Offer 的全流程准备
前端·后端·面试
_柳青杨29 分钟前
跨域获取 iframe 选中文本?自己写个代理中间层,再也不求后端!
前端
比尔盖茨的大脑29 分钟前
事件循环底层原理:从 V8 引擎到浏览器实现
前端·javascript·面试
天才熊猫君29 分钟前
Vue3 命令式弹窗原理和 provide/inject 隔离机制详解
前端
bluceli30 分钟前
Vue 3 Composition API深度解析:构建可复用逻辑的终极方案
前端·vue.js
程序员ys32 分钟前
前端权限控制设计
前端·vue.js·react.js