浅谈json取值(对象和数组)

浅谈JSON取值(对象和数组)

JSON介绍

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它基于JavaScript的语法,但是JSON数据可以被其他编程语言解析和生成。JSON的数据结构是一种"键-值"的数据类型集合,类似于JavaScript中的对象,但是JSON没有方法。JSON通过JavaScript中的eval()函数进行解析,也可以使用JSON.parse()。

JSON对象

JSON对象是由一系列键值对组成的,键值对之间用逗号分隔,整个JSON对象用花括号包裹。如下所示:

{
  "name": "Lucy",
  "age": 18,
  "gender": "female"
}

JSON数组

JSON数组是由一组值组成的,值之间用逗号分隔,整个JSON数组用中括号包裹。如下所示:

[10, 20, 30, 40, 50]

JSON取值操作

JSON对象取值

取出JSON对象的某个键对应的值,可以使用对象名加点号再加上键名的方式进行取值,如下所示:

const obj = {
  "name": "Lucy",
  "age": 18,
  "gender": "female"
}
console.log(obj.name) // Lucy
console.log(obj.age)  // 18
console.log(obj.gender)  // female

JSON数组取值

1. 取出JSON数组中某个索引对应的值

取出JSON数组中某个索引对应的值,可以使用数组名加中括号再加上索引值的方式进行取值,如下所示:

const arr = [10, 20, 30, 40, 50]
console.log(arr[0]) // 10
console.log(arr[2]) // 30
console.log(arr[4]) // 50

2. 将JSON数组转换为普通数组

将JSON数组转换为普通数组,可以使用JSON.parse()函数进行转换,如下所示:

const jsonArr = '[10, 20, 30, 40, 50]'
const arr = JSON.parse(jsonArr)
console.log(arr) // [10, 20, 30, 40, 50]

示例说明

示例1

以下是一个包含JSON对象和JSON数组的示例:

{
  "name": "Lucy",
  "age": 18,
  "gender": "female",
  "interests": [
    "reading",
    "music",
    "travelling"
  ]
}

我们可以使用如下代码取出gender键对应的值,以及interests数组中的第二个元素。

const json = '{"name":"Lucy","age":18,"gender":"female","interests":["reading","music","travelling"]}'
const obj = JSON.parse(json)
console.log(obj.gender)     // female
console.log(obj.interests[1]) // music

示例2

以下是将一个普通数组转换为JSON数组的示例:

const arr = [1, 2, 3, 4, 5]
const jsonArr = JSON.stringify(arr)
console.log(jsonArr) // [1,2,3,4,5]

我们将普通数组[1, 2, 3, 4, 5]使用JSON.stringify()函数转换为了JSON数组。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅谈json取值(对象和数组) - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • Spring Security实现接口放通的方法详解

    Spring Security实现接口放通的方法详解 在使用Spring Security时,有时需要对一些接口进行放通,不需要进行权限验证,那么该如何实现呢?下面让我们一起来详细讲解Spring Security如何实现接口放通。 1. 使用antMatchers()方法实现接口放通 antMatchers()方法可以用来指定要放行的接口url,可以使用通…

    Java 2023年6月3日
    00
  • 通过Tomcat开启JMX监控的方法图解

    下面是通过Tomcat开启JMX监控的方法图解的完整攻略,包含以下步骤: 步骤一:修改Tomcat配置文件 首先,我们需要修改Tomcat的配置文件,以允许JMX监控。具体操作如下: 打开Tomcat的conf目录下的catalina.properties文件; 找到并注释掉如下内容: #com.sun.management.jmxremote.port=1…

    Java 2023年5月19日
    00
  • 详解Spring 中 Bean 对象的存储和取出

    下面是详解Spring中Bean对象的存储和取出的完整攻略: 目录 1. Spring中Bean对象的存储 1.1 BeanFactory 1.2 ApplicationContext 2. Spring中Bean对象的取出 2.1 通过名称获取Bean对象 2.2 通过类型获取Bean对象 3. 示例说明 3.1 示例1:通过名称获取Bean对象 3.2 …

    Java 2023年5月26日
    00
  • springboot+springmvc+mybatis项目整合

    一、概述 本文将简要讲解如何使用SpringBoot + SpringMVC + MyBatis这个组合来开发Web应用。这一组合是非常流行的,MyBatis负责ORM,SpringMVC负责MVC框架,SpringBoot则帮助我们快速搭建整个应用。 二、环境搭建 首先,我们需要在本地环境中安装JDK、Maven以及相应的IDE。为了便于快速上手,可以使用…

    Java 2023年5月15日
    00
  • [推荐]Win2003 服务器的详细架设

    [推荐]Win2003 服务器的详细架设 介绍 本攻略将讲解如何在Win2003上架设服务器,并安装IIS和SQL Server,适用于需要搭建Web应用或开发环境的用户。 系统要求 Windows Server 2003操作系统 硬件配置:最低Pentium III 550MHz、256MB RAM、3GB硬盘空间,推荐Pentium 4或以上、512MB…

    Java 2023年6月15日
    00
  • 原来这就是所谓的 JSR!

    相信大家在学习 Java 的过程中,或多或少都见过 JSR 这个词。本篇文章就科普下什么是 JSR。 什么是 JSR ? JSR(Java Specification Requests),是指 Java 规范请求(或者活规范提案)。这个请求(提案)是提给 JCP 的(Java Community Process)。那什么是 JCP 呢? JCP 官网在这:h…

    Java 2023年4月22日
    00
  • SpringBoot深入理解之内置web容器及配置的总结

    Spring Boot深入理解之内置Web容器及配置的总结 什么是Spring Boot内置Web容器 Spring Boot是一种轻量级Java开发框架,它简化了Spring应用程序的构建和部署过程。它支持内置Web容器,如Tomcat、Jetty和Undertow。这意味着您可以直接使用可执行Jar文件启动Spring应用程序而无需外部Web服务器。 S…

    Java 2023年5月15日
    00
  • Java 实现对称加密算法

    Java 实现对称加密算法攻略 对称加密算法指使用同一个密钥进行加解密的加密算法。本攻略将介绍 Java 如何实现对称加密算法,主要包括以下内容: 对称加密算法的种类 Java 中实现对称加密的常用类库 对称加密算法的实现步骤 示例说明 对称加密算法的种类 对称加密算法包括 DES、3DES、AES 等常用算法。其中,AES 目前是最常用的对称加密算法。 J…

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部