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

网站数据库怎么恢复新品上市怎么做宣传推广

网站数据库怎么恢复,新品上市怎么做宣传推广,网络营销与策划实务,个人备案网站做电影站structuredClone 简介 structuredClone 是现代浏览器提供的原生 JavaScript 方法,用于深拷贝对象。它可以处理各种复杂数据结构,包括嵌套对象、数组、Date、Map、Set 等,且支持循环引用。 语法 const clone structuredClone(value);value:…

structuredClone 简介

structuredClone 是现代浏览器提供的原生 JavaScript 方法,用于深拷贝对象。它可以处理各种复杂数据结构,包括嵌套对象、数组、Date、Map、Set 等,且支持循环引用。


语法

const clone = structuredClone(value);
  • value: 需要深拷贝的值,可以是任何支持的 JavaScript数据结构。
  • 返回值是完全独立的深拷贝对象。

支持的类型

structuredClone 支持多种类型,包括:

  • 基本数据类型: string, number, boolean, null, undefined, Symbol
  • 复杂对象: Object, Array, Date, Map, Set, ArrayBuffer, TypedArray
  • 循环引用: 能正确处理循环引用的结构。

示例

基本对象深拷贝
const obj = { a: 1, b: { c: 2 } };
const deepCopy = structuredClone(obj);deepCopy.b.c = 42;
console.log(obj.b.c); // 输出 2,原对象未受影响
处理数组
const arr = [1, [2, 3], 4];
const deepCopy = structuredClone(arr);deepCopy[1][0] = 42;
console.log(arr[1][0]); // 输出 2,原数组未受影响
支持循环引用
const obj = { a: 1 };
obj.self = obj; // 创建循环引用const deepCopy = structuredClone(obj);
console.log(deepCopy.self === deepCopy); // 输出 true,循环引用也被正确复制
拷贝特殊对象
const special = {date: new Date(),map: new Map([['key', 'value']]),set: new Set([1, 2, 3])
};const deepCopy = structuredClone(special);console.log(deepCopy.date === special.date); // 输出 false,完全独立
console.log(deepCopy.map.get('key')); // 输出 'value'
console.log(deepCopy.set.has(1)); // 输出 true

无法拷贝的类型

以下类型的值不支持 structuredClone,会抛出异常:

  • 函数 (Function)
  • DOM 节点
  • 类实例(例如自定义类对象)
const fn = { a: () => {} }; 
structuredClone(fn); // 抛出异常:Uncaught DOMException

优势

  1. 原生支持:不需要第三方库。
  2. 性能优化:相比于 JSON.parse(JSON.stringify) 更快,更安全。
  3. 更多支持的类型:支持 Date、Map、Set、循环引用等复杂结构。
  4. 不受 JSON 限制:能够处理 undefined 和特殊对象。

局限性

  1. 不支持拷贝函数、DOM 节点、自定义类实例。
  2. 需要现代浏览器支持(较老的环境中不可用)。

浏览器兼容性

  • structuredClone 是现代浏览器(如 Chrome 98+、Edge 98+、Firefox 94+)中才支持的 API。
  • 如果需要在不支持 structuredClone 的环境中使用,可以考虑手动实现深拷贝或使用第三方库(如 Lodash 的 cloneDeep)。

总结

structuredClone 是深拷贝对象和数据结构的最佳原生解决方案之一。对于现代开发者来说,它是一个便捷且性能优越的工具,尤其是在处理复杂对象和循环引用时。

http://www.dt0577.cn/news/2636.html

相关文章:

  • 支付宝手机网站支付前端怎么做如何免费自己创建网站
  • 桂林网站制作网站制作步骤流程图
  • 广西网站建设银行合肥网站建设程序
  • 企业全屏网站seo网络推广员招聘
  • 梅州网站建百度一下官网搜索引擎
  • 网站开发一个人可以完成吗谷歌seo外链平台
  • 怎样才能做公司的网站百度账号登录入口官网
  • 做网站横幅用什么软件好东莞seo外包公司哪家好
  • 国外平面设计素材网站seo网站推广seo
  • 建立个人网站的目的广州网站推广
  • 长春火车站进站需要核酸检测吗搜索引擎的工作原理有哪些
  • 福田做商城网站建设哪家服务周到互联网域名注册查询
  • 广州外贸网站公司网络服务商怎么咨询
  • 服务器如何做网站网站关键词优化排名公司
  • 网络推广培训网站引擎搜索下载
  • 有没有如何做网站的书国际十大市场营销公司
  • 襄阳网站开发宣传软文
  • wordpress中文站电商软文范例300字
  • 建站网站建设谷歌官网入口手机版
  • 自己网上开店怎么做合肥百度推广优化排名
  • 有什么做vi设计的网站天天外链官网
  • wordpress是否有商城插件宁波seo推荐
  • 弹出全屏视频网站怎么做上海网站seo
  • 做网站完整过程公司营销策划方案案例
  • 织梦 网站搬家全球十大搜索引擎排名及网址
  • 常州新北区建设局网站人力资源和社会保障部
  • 专业积分商城网站建设营销和销售的区别
  • 百度云网站入口百度学术官网登录入口
  • 有趣的网站名十种营销方式
  • 范例网站怎么做免费引流推广方法