位置: 编程技术 - 正文

详解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绑定事件是什么)

  • 普通发票税率1%要交税吗
  • 一般纳税人增值税优惠政策2023
  • 个人所得税申报退税多久到账
  • 现金日记账本月合计的红线画法
  • 出口的港杂费包括哪些
  • 土地使用权入账价值包括哪些
  • 服务业发票的开具范围包括什么
  • 递延所得税负债是什么意思
  • 公司收到现金货款需要存入银行吗
  • 以前年度亏损可以税前扣除吗
  • 调用核心征管失败是什么意思
  • 企业资产损失会计处理
  • 分期付款确认收入借方写啥
  • 企业研发产品成本怎么算
  • 债权投资属于其他非流动金融资产嘛
  • 住房公积金的工资基数什么意思
  • 30万的营业额20%是多少
  • 个体户税务申报流程季度0申报
  • 网上代开专票 附加税在哪看
  • 生产车间领用材料45000元,投入生产
  • win7为什么无法开启aero
  • 水土保持补偿费收费依据
  • 车辆理赔款计入什么科目
  • 商贸公司如何结算成本
  • php实现的三个常数是什么
  • 怎么解决windows许可证即将过期
  • ghost windows10安装教程
  • 向银行借入长期借款50万元
  • win7纯净版系统激活
  • 特种商品劳务税
  • 出售低值易耗品的成本
  • 合理损耗企业所得税税率
  • php机试题
  • win10iis安装配置
  • 跨省不动产登记
  • 申报表30栏一直不填写会怎么样
  • 减免税费是几级科目
  • vue3项目实战
  • 开源dap
  • 已收到货款 还未发货的会计处理
  • 接手前往年的银行余额不平怎么办?
  • 帝国cms建站教程
  • 公账转给员工工资情况说明怎么写
  • 预收的贷方余额表示什么
  • 现金流量表中的现金流量包括哪些
  • 给个体工商户打工受伤怎么办
  • 成本类科目会结转到损益类科目吗?
  • 自制小汽车
  • 年度财务报告和年度报告
  • 购货方发生退货的会计分录
  • 财务费用为什么是向债权人支付的现金流量
  • 如何在个人所得税app上修改扣缴义务人
  • 赠品视同销售会计分录如何编制?
  • 进项转出再转入
  • 未按期预缴企业社保
  • 计提应付票据利息10000的会计分录
  • 住宿补贴需要交个税吗
  • 资产负债率比率
  • 补缴企业所得税
  • 跨国企业在国外设立工厂的战略地位
  • mysql安装时出现的问题
  • windows许可证即将过期怎么办知乎
  • mac os ftp
  • 在windows xp中说法正确的是
  • 苹果电脑dock栏不见了
  • dghm.exe是什么程序
  • centos配ip的方法
  • win10里的运行
  • win10系统保留分区可以删除吗
  • win10系统玩游戏闪退怎么解决
  • python中map函数功能
  • node js并发加载缓慢
  • linux中的ls命令的功能是变换工作目录到目标指定目录
  • python控制台怎么用
  • jquery tab
  • 北京办理税务登记的地方
  • 新车购置税是多少
  • 河北手工发票查验平台
  • 地税发票查询官网查询
  • 小规模纳纳税人
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设