位置: 编程技术 - 正文

详解JavaScript对象序列化(javascript的)

编辑:rootadmin

推荐整理分享详解JavaScript对象序列化(javascript的),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript的,javascript的,javascript的,对javascript的理解,对于javascript理解,javascript的对象主要包括,javascript对象有什么用,javascript对象有什么用,内容如对您有帮助,希望把文章链接给更多的朋友!

一.什么是对象序列化?

  对象序列化是指将对象的状态转换为字符串(来自我这菜鸟的理解,好像有些书上也是这么说的,浅显易懂!);

  序列化(Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程(来自“百度百科—序列化“,学术性强,略显高端);

二.为什么会有对象序列化?

详解JavaScript对象序列化(javascript的)

  世间万物,都有其存在的原因。为什么会有对象序列化呢?因为程序猿们需要它。既然是对象序列化,那我们就先从一个对象说起:

  当这句代码运行时,对象obj的内容会存储在一块内存中,而obj本身存储的只是这块内存的地址的映射而已。简单的说,对象obj就是我们的程序在电脑通电时在内存中维护的一种东西,如果我们程序停止了或者电脑断电了,对象obj将不复存在。那么如何把对象obj的内容保存在磁盘上呢(也就是说在没电时继续保留着)?这时就需要把对象obj序列化,也就是说把obj的内容转换成一个字符串的形式,然后再保存在磁盘上。另外,我们又怎么通过HTTP协议把对象obj的内容发送到客户端呢?没错,还是需要先把对象obj序列化,然后客户端根据接收到的字符串再反序列化(也就是将字符串还原为对象)解析出相应的对象。这也正是”百度百科—序列化“中描述的两个作用——存储、传输。

三.JavaScript中的对象序列化

  JSON的全称是”JavaScript Object Notation“——JavaScript对象表示法。ECMAScript 5中提供了内置函数JSON.stringify()和JSON.parse()用来序列化和还原JavaScript对象。它们使用起来也很简单:

可以看到,exampleStr和exampleObj2中并没有 y:undefined 的内容。这说明:JSON的语法是JavaScript语法的子集,它并不能表示JavaScript中的所有值,对于JSON语法不支持的属性,序列化后会将其省略。其详细规则如下:

①对于JavaScript中的五种原始类型,JSON语法支持数字、字符串、布尔值、null四种,不支持undefined; ②NaN、Infinity和-Infinity序列化的结果是null; ③JSON语法不支持函数; ④除了RegExp、Error对象,JSON语法支持其他所有对象; ⑤日期对象序列化的结果是ISO格式的字符串,但JSON.parse()依然保留它们字符串形态,并不会将其还原为日期对象; ⑥JSON.stringify()只能序列化对象的可枚举的自有属性;

从上面的例子也可以看到,在符合以上规则的情况下,还可以通过对象序列化和反序列化完成对象的深拷贝。

标签: javascript的

本文链接地址:https://www.jiuchutong.com/biancheng/383736.html 转载请保留说明!

上一篇:学习JavaScript设计模式之单例模式(javascript教程doc)

下一篇:理解JS绑定事件(理解js绑定事件是什么)

  • 城镇垃圾处理费的计税依据
  • 生产成本科目期末余额反映的是
  • 更改增值税申报表有退税会很麻烦吗
  • 如何根据资产负债表填写现金流量表
  • 公章更换后需要到工商局备案么
  • 物流运输企业增值税税负
  • 小型微利企业申请
  • 公司代扣代缴个税完税凭证在哪里可以打印
  • 跨年冲减费用
  • 库存商品记错了怎样写分录
  • 委托加工分装农药的委托人应当取得相应的
  • 哪些费用可以计入待摊费用
  • 个人如何开劳务费怎么开
  • 个体户地税怎么收费
  • 体检发票开公司还是个人
  • 倒增值税发票过程
  • 税收分类编码风险评估
  • 一月份的工作日是多少天
  • 私募投资基金投资者风险问卷调查
  • 社保不报的情况下保险报销吗
  • 公司车辆怎么处理
  • 停产资产折旧如何处理
  • 哪些票据可以冲抵增值税
  • mac电脑安装win10系统报错
  • 个体户生产经营所得怎么报税
  • 商事账簿编制的一般规则是什么
  • 事业单位项目前景怎么样
  • 上市公司发行股份是什么意思
  • 数字证书费用计入管理费用什么科目
  • vue页面获取url参数
  • 因质量问题被扣钱怎么办
  • PHP:http_build_query()的用法_url函数
  • 费用报销费用填写要求
  • 发票未认证丢失怎么补办
  • 对外投资概述
  • 企业生产经营过程中的在产品属于
  • vue3+vite+typescript出现does not provide an export named ‘xxx‘ 解决方法
  • laravel登录接口
  • 基于opencv的图像处理
  • php测验
  • html的网址
  • mysql封装函数
  • 增值税纳税申报实训报告
  • 冲减多计提的工资摘要怎么写
  • 个人所得税要缴纳一万多怎么办
  • 一般户可以转账给员工报销吗
  • 织梦怎么改文字
  • SQL Server 2016 TempDb里的显著提升
  • 每月随工资发放的房补,本月至今未发
  • 跨月凭证怎么冲销
  • 电子银行承兑到期没有兑现怎么办
  • 实收资本为0可以运作吗?
  • 进销存的会计处理实务
  • 购入库存商品会计摘要怎么写
  • 计提个人所得税会计分录怎么做账
  • 公司注销固定资产必须清理吗
  • 子公司如何向母公司开户
  • 营业外支出增加说明了什么
  • 固定资产折旧是什么意思
  • 佣金开什么发票内容?
  • 一般纳税人购买固定资产进项税可以抵扣吗
  • 班车租赁服务
  • 已提折旧是什么意思
  • 建账的基本步骤
  • mysql保留整数
  • win7旗舰版和家庭版哪个对电脑要求低
  • apt-get download
  • xp系统进入桌面后没反应
  • echarts怎么用
  • 最简单的游戏开发工具
  • cocos2dx 4.0
  • JavaScript While 循环 教程
  • 互联网巨头bat有哪些
  • [置顶]马粥街残酷史
  • jquery map遍历
  • actionbar如何添加按钮
  • 发票怎样读入金税开票系统
  • 福建省国税局电话号码
  • 申请小规模纳税人公司需要多久
  • 黄山市国家税务局倪国初
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设