当前位置: 首页 > news >正文

手工做衣服的网站网络营销的重要性与意义

手工做衣服的网站,网络营销的重要性与意义,移动互联网技术网站,做网站什么数据库用的多JSON.parse(JSON.stringify(obj)) 这行代码的运行过程,就是利用 JSON.stringify 将js对象序列化(JSON字符串),再使用JSON.parse来反序列化(还原)js对象;序列化的作用是存储和传输。&#xff08…

JSON.parse(JSON.stringify(obj))

这行代码的运行过程,就是利用 JSON.stringify 将js对象序列化(JSON字符串),再使用JSON.parse来反序列化(还原)js对象;序列化的作用是存储和传输。(对象本身存储的是一个地址映射,如果断电,对象将不存在,所以要将对象的内容转换成字符串的形式再保存在磁盘上)
不过,这种实现深拷贝的方法有局限性,它只适用于一般数据的拷贝(对象、数组),有以下情况需要注意:

1.如果json里面有时间对象,则序列化结果:时间对象=>字符串的形式;

{let obj = {age: 18,date: new Date()};let objCopy = JSON.parse(JSON.stringify(obj));console.log('obj', obj);console.log('objCopy', objCopy);console.log(typeof obj.date); // objectconsole.log(typeof objCopy.date); // string
}

image.png

2.如果json里有RegExp、Error对象,则序列化的结果将只得到空对象 RegExp、Error => {};

{let obj = {age: 18,reg: new RegExp('\w+'),err: new Error('error message')};let objCopy = JSON.parse(JSON.stringify(obj));console.log('obj', obj);console.log('objCopy', objCopy);
}

image.png

3.如果json里有 function,undefined,则序列化的结果会把 function,undefined 丢失;

{let obj = {age: 18,fn: function () {console.log('fn');},hh: undefined};let objCopy = JSON.parse(JSON.stringify(obj));console.log('obj', obj);console.log('objCopy', objCopy);
}

image.png

4.如果json里有NaN、Infinity和-Infinity,则序列化的结果会变成null;

{let obj = {age: 18,hh: NaN,isInfinite: 1.7976931348623157E+10308,minusInfinity: -1.7976931348623157E+10308};let objCopy = JSON.parse(JSON.stringify(obj));console.log('obj', obj);console.log('objCopy', objCopy);
}

image.png

5.如果json里有对象是由构造函数生成的,则序列化的结果会丢弃对象的 constructor;

{function Person(name) {this.name = name;}let obj = {age: 18,p1: new Person('lxcan')};let objCopy = JSON.parse(JSON.stringify(obj));console.log('obj', obj);console.log('objCopy', objCopy);console.log(obj.p1.__proto__.constructor === Person); // trueconsole.log(objCopy.p1.__proto__.constructor === Object); // true
}

image.png

6.如果对象中存在循环引用的情况也无法实现深拷贝

{let obj = {age: 18};obj.obj = obj;let objCopy = JSON.parse(JSON.stringify(obj));console.log('obj', obj);console.log('objCopy', objCopy);
}

image.png

以上,如果拷贝的对象不涉及上面的情况,可以使用 JSON.parse(JSON.stringify(obj)) 实现深拷贝。

http://www.tj-hxxt.cn/news/23447.html

相关文章:

  • 电影网站怎么做laravel百度搜索推广登录入口
  • 素材中国官网奉化首页的关键词优化
  • 带搜索的下拉框网站企业网站seo方案
  • bt在线天堂中文最新版网seo工具
  • 跨境电商网站开发文档广告平台
  • 搭建什么网站比较赚钱免费域名解析
  • 华容网站建设百度获客
  • 做网站的框架seo领导屋
  • 网站页面小图标怎么做培训师资格证怎么考
  • 世界网站制作网络营销热点事件案例分析
  • 网站空间 windows linux百度推广代理商查询
  • 在越南做一个网站怎么做站长工具精品
  • 上海网站建设 网站制作博客程序seo
  • 网站客服案例如何广告推广
  • 网站开发实例pdf太极seo
  • wordpress logo底色seo查询工具网站
  • 松江专业做网站公司关键词的优化方案
  • 苍南做网站天津seo
  • 假网站如何做张家界网站seo
  • 云栖建站百度seo关键词排名查询工具
  • 织梦高端html5网站建设工作室网络公司网站模板做网站的平台有哪些
  • php和java做网站semantics
  • 微商手机网站制作公司网络营销意思
  • 公司网站建设合同模板郴州网站定制
  • 设计素材网站balance一个自己的网站
  • 用php做网站的新闻站长工具外链查询
  • 做旅游的海报图片网站做营销型网站哪家好
  • 怎么做网站快照seo的收费标准
  • 网站建设和应用的情况南京网站设计公司大全
  • 公司信用信息查询系统西安快速排名优化