JSON简单了解

文章目录

        • 1、JSON介绍
        • 2、ES6模版字符串
        • 3、JS对象转化为JSON字符串
          • 3.1、手动JS对象转化为JSON字符串
          • 3.2、自动JS对象转化为JSON字符串
        • 4、JS对象和java互相转换

1、JSON介绍

JSON

  • 概念:JavaScript Object Notation。JavaScript 对象表示法,简单理解JSON是把JS对象变成字符串
  • 由于其语法简单,层次结构鲜明,现多用于网络中数据传输

image-20240122095936292

2、ES6模版字符串

ES6是js的语法标准,ES6中有js对象转化为json方法

ES6模板字符串是一种用来创建多行字符串和嵌入表达式的新语法。它是在ES6(ECMAScript 2015)中引入的

**例如:**想在页面输出4+5=9,原始方法

//1、浏览器中打印 4+5=9
let n1 = 4;
let n2 = 5;
let result = n1 + n2;
document.write(n1 + "+" + n2 + "=" + result + "<br/>");

而使用模板字符串允许你在字符串中嵌入变量或表达式。你可以使用${}语法在模板字符串中插入变量或者执行表达式,并将结果嵌入到字符串中

//2、使用ES6模版字符串
document.write(`${n1} + ${n2} = ${result}` + "<br/>");

ES6模板字符串可以在json中使用

let person = {name:"张三",age:"18",eat:function (){document.write(`${this.name},正在吃饭`);}
};//调用
document.write(`姓名:${person.name},年龄:${person.age}` + "<br/>");
person.eat();

**注意:**ES6与JSP中的EL表达式有冲突,两者只能用其一

3、JS对象转化为JSON字符串
3.1、手动JS对象转化为JSON字符串

JavaScript对象

{name:"zhangsan",age:23,city:"北京"
}

JSON字符串

`{"name":"zhangsan","age":23,"city":"北京"}`

具体流程:

  1. 键加 ” ”
  2. 最外面加 ’ ’
  3. 放在同一行
3.2、自动JS对象转化为JSON字符串

方法

JSON对象的方法说明
stringify(对象)将指定对象转换为json格式字符串
parse(字符串)将指定json格式字符串解析成对象

演示:

<script>let person = {name:"zhangsan",age:23,city:"北京"};// 将js对象转化为json字符串let s = JSON.stringify(person);document.write(s + "<br/>"); //输出 {"name":"zhangsan","age":23,"city":"北京"}// 将json字符串转化为对象let person2 = JSON.parse(s);document.write(`姓名:${person2.name},年龄:${person2.age}` + "<br/>");  //输出 姓名:zhangsan,年龄:23</script>
4、JS对象和java互相转换

JSON转换工具的概述

**简介:**JSON的转换工具是通过Java封装好的一些jar工具包,直接将Java对象或集合转换成JSON格式的字符串,也可以将 JSON格式的字符串转成Java对象。

常见的JSON转换工具:

image-20240122134659149

Fastjson

**简介:**Fastjson是阿里巴巴提供的一个Java语言编写的高性能功能完善的JSON库,是目前Java语言中最快的JSON库,可以实现Java对象和JSON字符串的相互转换

使用:

  • 导入依赖

    <dependencies><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.58</version></dependency>
    </dependencies>
    
  • Java对象转JSON

String jsonStr = JSON.toJSONString(obj);
  • JSON字符串转Java对象

    User user = JSON.parseObject(jsonStr, User.class);
    

代码演示:

public static void main(String[] args) {// 1、将user对象转化为json字符串User user = new User("zhangsan",18);String jsonUser = JSON.toJSONString(user);System.out.println(jsonUser);// 2、将json字符串转换为java对象String userStr = "{\"age\":30,\"username\":\"list\"}";User parse = JSON.parseObject(userStr,User.class);System.out.println(parse);
}

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

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

相关文章

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(九)

26.搭建开发环境 开发环境 | webpack 中文文档 (docschina.org) 之前运行时出现的警告和mode配置有关 目标11&#xff1a;配置开发服务器环境 webpack-dev-server 11.1 下载 webpack-dev-server 软件包到当前项目 11.2 设置打包的模式为开发模式&#xff0c;配置自定义命令 11…

OpenGL ES 实现图像腐蚀、膨胀、边缘检测

前文我们详细讲了图像锐化的基本原理,本文再介绍一下图像基本处理之腐蚀、膨胀和边缘检测,它们在图像处理和计算机视觉领域有着广泛的应用。 图像腐蚀(Image Erosion):用于缩小或消除图像中物体的边界。主要用于去除图像中的小细节、噪声或不规则物体。 实现图像腐蚀的片…

高清短视频素材网站有哪些?分享十个做短视频必备的素材下载网站!

对于专注于短视频制作和剪辑的朋友来说&#xff0c;找到高质量的视频素材至关重要。你可能会想&#xff1a;“高清短视频素材网站有哪些&#xff1f;”别担心&#xff0c;今天我要为大家推荐十个提供优质素材的网站&#xff0c;帮你轻松搞定短视频制作&#xff01; 怪木素材网…

垃圾收集算法

垃圾收集算法有如下几种&#xff1a; 分代收集理论&#xff1a;年龄代和老年代选择各自的垃圾收集算法。 复制算法&#xff1a;可达性分析算法找非垃圾对象&#xff0c;然后把非垃圾对象移动到另一端&#xff0c;这一端的垃圾对象清除&#xff0c;该方法浪费内…

SpringBoot解决Slow HTTP慢速攻击漏洞

项目场景&#xff1a; 扫描到的漏洞截图&#xff1a; 攻击原理&#xff1a; Web应用在处理HTTP请求之前都要先接收完所有的HTTP头部&#xff0c;因为HTTP头部中包含了一些Web应用可能用到的重要的信息。攻击者利用这点&#xff0c;发起一个HTTP请求&#xff0c;一直不停的发送…

Qt 国产嵌入式操作系统实现文字转语音功能(ekho库)

1.简介 Qt 国产嵌入式操作系统实现文字转语音功能(TTS)_tts驱动 转文字-CSDN博客 在继上篇文章之后,甲方粑粑不满意使用eSpeak发出的声音太难听了,这就不得不找个替代品,声音稍微好听了一些。 使用ekho开源库。 Ekho(余音)是一个免费、开源的中文语音合成软件。它目…

babel

文章目录 babelpolyfillbabel-polyfill babel Babel 默认只转换新的 JavaScript 句法&#xff08;syntax&#xff09;&#xff0c;而不转换新的 API&#xff0c;比如Iterator、Generator、Set、Map、Proxy、Reflect、Symbol、Promise等全局对象&#xff0c;以及一些定义在全局…

〖大前端 - ES6篇①〗- ES6简介

说明&#xff1a;该文属于 大前端全栈架构白宝书专栏&#xff0c;目前阶段免费&#xff0c;如需要项目实战或者是体系化资源&#xff0c;文末名片加V&#xff01;作者&#xff1a;哈哥撩编程&#xff0c;十余年工作经验, 从事过全栈研发、产品经理等工作&#xff0c;目前在公司…

burp靶场--host攻击

burp靶场–host攻击 https://portswigger.net/web-security/host-header#what-is-an-http-host-header-attack 在本节中&#xff0c;我们将讨论错误配置和有缺陷的业务逻辑如何通过 HTTP 主机标头使网站遭受各种攻击。我们将概述用于识别易受 HTTP 主机标头攻击的网站的高级方…

PolarDB无感切换特性助力游戏领域高可用实践

❤️作者主页&#xff1a;小虚竹 ❤️作者简介&#xff1a;大家好,我是小虚竹。2022年度博客之星评选TOP 10&#x1f3c6;&#xff0c;Java领域优质创作者&#x1f3c6;&#xff0c;CSDN博客专家&#x1f3c6;&#xff0c;华为云享专家&#x1f3c6;&#xff0c;掘金年度人气作…

1月 mysql索引分享

pre&#xff1a; 分享目标&#xff1a;怎样看到索引有被用到、索引的注意事项等等 索引有哪些&#xff1a;全文索引、主键索引、唯一索引、普通索引、覆盖索引、组合索引、B-Tree索引、哈希索引… InnoDB使用聚簇索引&#xff0c;B树索引。 B 索引 MySQL InnoDB的索引数据结…

零代码编程:用ChatGPT智能批量删除文件标题中的某些字符

文件里面有很多个mp4视频文件&#xff0c;要批量删除文件标题中的“Little Fox - ”“Level 04”、“Level 4”、“Level04”“ - ”、“-”、“_”等字母和符号。 在ChatGPT中输入提示词如下&#xff1a; 你是一个Python编程专家&#xff0c;要完成一个批量重命名文件标题的任…

【wu-framework-parent 1.2.2-JDK17-SNAPSHOT 新版本中的 ACW】

版本: 1.2.2-JDK17-SNAPSHOT 项目地址&#xff1a;https://gitee.com/wujiawei1207537021/wu-framework-parent/tree/master/wu-smart-intergration/wu-smart-acw 演示地址&#xff1a;http://124.222.48.62:30193/wu-smart-acw-ui/index.html admin/admin docker启动 dock…

AI大概不会很快抢走你的饭碗哦!

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

Unity3d引擎中使用AIGC生成的360全景图(天空盒)

前言 在这里与Skybox AI一起&#xff0c;一键打造体验无限的360世界&#xff0c;这是这个AIGC一键生成全景图的网站欢迎语。 刚使用它是23年中旬&#xff0c;在没有空去给客户实地拍摄全景图时&#xff0c;可以快速用它生成一些相关的全景图&#xff0c;用作前期沟通的VR de…

[Combine 开发] 寻找值

first() first() 操作符用于获取发布者的第一个元素。它返回一个新的发布者&#xff0c;该发布者只发出第一个元素&#xff0c;然后完成 基本用法&#xff1a; let numbers [1, 2, 3, 4, 5]let cancellable numbers.publisher.first().sink { value inprint("First v…

数据结构——Java实现栈和队列

一、栈 Stack 1.特点 &#xff08;1&#xff09;栈是一种线性数据结构 &#xff08;2&#xff09;规定只能从栈顶添加元素&#xff0c;从栈顶取出元素 &#xff08;3&#xff09;是一种先进后出的数据结构&#xff08;Last First Out&#xff09;LIFO 2.具体实现 Java中可…

leetcode35题:搜索插入位置

文章目录 一、题目描述&#xff1f;二、不同时间复杂度的代码实现以及讲解1.时间复杂度&#xff1a;O(n)2.时间复杂度&#xff1a;O(log n) 一、题目描述&#xff1f; 给定一个排序数组和一个目标值&#xff0c;在数组中找到目标值&#xff0c;并返回其索引。如果目标值不存在…

Zookeeper集群

一、Zookeeper概述 1.1 Zookeeper 定义 Zookeeper是一个开源的分布式的&#xff0c;为分布式框架提供协调服务的Apache项目。 1.2 Zookeeper 工作机制 Zookeeper从设计模式角度来理解&#xff1a;是一个基于观察者模式设计的分布式服务管理框架&#xff0c;它负责存储和管理…

华夏基金“冰火两重天”:产品增量不增值,靠什么赢得用户?

近日&#xff0c;华夏基金发布关于华夏野村日经225交易型开放式指数证券投资基金&#xff08;QDII&#xff09;&#xff08;下称“华夏野村日经ETF”&#xff09;二级市场交易价格溢价风险提示及临时停牌公告。 公告内容显示&#xff0c;华夏野村日经ETF二级市场交易价格明显高…