江在川上曰:js中的JSON解析和序列化
江在川上曰:js中的JSON解析和序列化
JSON解析和序列化
JSON是javascript的一个严格的子集,利用了javacript中的一些模式来表示结构化数据。他只是一种数据格式,并非一种编程语言。
JSON语法
JSON可以表示三种类型的值。
类型 | 说明 |
---|---|
简单值 | 可以在JSON使用String、Number、Boolean和null,但是不能够使用undefined。 |
对象 | 是一组无序的键值对,值可以是简单值、也可以是对象、数组。 |
数组 | 是一组有序的值的序列,可以通过索引索引值,值可以是简单值、也可以是对象、数组。 |
var myJson = {"name":"jesse","age":"12","score":{"Chinese":"98","Math":"99","English":"100"},"goods":[{"name":"paper","price":"20"},{"name":"pencil","price":"2"},{"name":"book","price":"1"}]
}
切记:同一个json对象不能出现同名的属性,必须保持唯一性。
JSON解析
语法:JSON.parse(text,[reviver])
作用:将javascript表示的JSON字符串转为JSON对象
参数:
- text: 必选,一个有效的JSON字符串
- reviver:可选,一个还原函数,对象中的每一个成员都将使用该函数
返回值:一个对象或数组
let myString = '{"name":"jesse","age":"12","score":{"Chinese":"98","Math":"99","English":"100"},"goods":[{"name":"paper","price":"20"},{"name":"pencil","price":"2"},{"name":"book","price":"1"}]}';
JSON.parse(myString)
得到:
{"name":"jesse","age":"12","score":{"Chinese":"98","Math":"99","English":"100"},"goods":[{"name":"paper","price":"20"},{"name":"pencil","price":"2"},{"name":"book","price":"1"}]
}
JSON序列化
语法:JSON.string(value,[replacer],space)
作用:将javascript表示的json对象转为json字符串
参数:
- value:必选,需要转换的json对象
- replacer:可选,过滤器,用于转换结果的函数或数组
- space:可选,用于控制结果中的缩进和空白符。
- 返回值:一个包含json文本的字符串
var myJson = {"name": "jesse","age": "12","score": {"Chinese": "98","Math": "99","English": "100"},"goods": [{ "name": "paper", "price": "20" },{ "name": "pencil", "price": "2" },{ "name": "book", "price": "1" }]}
JSON.stringify(myJson)
得到:
{"name":"jesse","age":"12","score":{"Chinese":"98","Math":"99","English":"100"},"goods":[{"name":"paper","price":"20"},{"name":"pencil","price":"2"},{"name":"book","price":"1"}]}
江在川上曰:js中的JSON解析和序列化相关推荐
- 江在川上曰:vue中使用swiper
vue中使用swiper 1 安装 //这是swiper组件 npm install vue-awesome-swiper --save-dev //这是swiper组件的依赖包 npm instal ...
- 江在川上曰:云服务器上的flask项目部署(Ubuntu+Flask+Gunicorn+Supervisor+Nginx+Anaconda)
云服务器上的flask项目部署(anaconda.python.flask等相关安装) 在探索未知的路上走了很多弯路,这里记载了我在阿里云上部署项目切实可行的步骤,当然问题因人而异,没有四海皆适用的准 ...
- 江在川上曰:JS函数
函数 函数的定义方式 自定义函数(命名函数) 函数表达式(匿名函数) 利用 new Function("参数1","参数2","函数体") ...
- 江在川上曰:webpack前端工程化
前端工程化 1.模块化相关规范 1.1浏览器端模块化规范 名称 文件 AMD Require.js CMD Sea.js 1.2 服务器端模块规范 common.js 1.3 大一统的模块化规范(ES ...
- 江在川上曰:less样式预编译
less样式预编译 1.css原生变量定义 使用"–"进行变量定义 使用var()进行变量的引用 --bgColor:red; background:var(--bgColor); ...
- 微信小程序JS中写Json解析for 数组的用法
前言: 1 JS作为小程序的函数库,大家可以作为一个模块编写好自己的函数,然后就可以随心所欲的去创作了.Json的调用,比前面我写的更加简洁写,直接贴代码,应该更加容易懂了. 2 刚入手小程序有些语言 ...
- js mysql json字符串转数组中_php数据库数据转换为js中的json对象
/ 1.在company数据user表中取出10条数据,保存为数组 2.在将数组转化为json格式,传递给js 3.用json解析器将传递过来的json字符串转化为json对象, 4.用documen ...
- JS中生成与解析JSON
js中生成json对象 js中解析json字符串: 1.eval("..."): var a_id=eval('{"name":123}'); 如果eval中的 ...
- JS中生成和解析JSON
1.JS中生成JSON对象的方法: var json = []; var row1 = {}; row1.id= "1"; row1.name = "jyy"; ...
最新文章
- NeHe OpenGL教程 第二十三课:球面映射
- 以后看下try,catch在C#下面的成本
- 通过例子学Solidity[注释翻译]
- [leetcode] 70.爬楼梯
- Redis Cluster 伪集群的搭建
- Javascript使用技巧-提高工作效率
- 51单片机应用行列反转法操纵矩阵键盘
- oracle查看视图定义语句_oracle中查询用户表/索引/视图创建语句
- 倍福plc有什么优点_倍福工业 PC 有哪些优点?
- 不再因BT吃官司 Magnet能否将BT漂白?
- Swift 音乐播放demo
- mysql创建临时表
- 学术会议海报制作和参考
- vue+element中引入百度地图
- Photoshop制作逼真燃烧的文字效果
- PHP+python+nodejs+ springboot+vue 社区互助平台
- 实现文字色彩渐变(Mask)
- 独家 | 利用深度学习来预测Spotify上的Hip-Hop 流行程度
- Android解决fragment来回切换重新实例化问题
- springboot基于javaweb校园防疫管理系统毕业设计源码021043
热门文章
- sqlserver中,sql语句,按照汉字拼音首字母排序
- 如何在win11上运行VC6.0
- turn out用法
- 教你使用python在终端创建炫酷二维码!!!
- 计算机信息系统集成资质涉密信息系统集成资质
- Android下载管理问题分析
- SQL service基础(九)用户定义数据类型和用户定义函数的概念、创建及使用方法
- regexp_substr()用法
- #ASM 翻译系列第十八弹:ASM Internal ASM file number 5
- html大作业网页代码 ——2019凡客服装店铺商城(1页) HTML+CSS+JavaScript HTML+CSS大作业_ 服装店铺网页制作作业_购物网页设计...