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

口碑好的合肥网站建设西安网页公司

口碑好的合肥网站建设,西安网页公司,聊城专业网站建设公司哪家好,简约大气网站设计欣赏我们都知道#xff0c;数组也是属于对象#xff0c;在JS中对象的存储方式则是引用的方式。我们想要拷贝一个数组#xff0c;就不能只是变量之前的赋值拷贝#xff0c;这样他们将共享同一个引用#xff0c;而数组又具有可变性#xff0c;所以无法将原数组和拷贝的数组的数…我们都知道数组也是属于对象在JS中对象的存储方式则是引用的方式。我们想要拷贝一个数组就不能只是变量之前的赋值拷贝这样他们将共享同一个引用而数组又具有可变性所以无法将原数组和拷贝的数组的数据分隔开。那么接下来将介绍如何对数据进行深层拷贝使得原数组和拷贝数组的数据分隔开来。 浅拷贝 1.展开运算符 只支持简单结构的拷贝 let number [1, 2, 3, 4, 5]let copy [...number]copy.push(0)console.log(copy, copy)//[1, 2, 3, 4, 5, 0]console.log(number, number)//[1, 2, 3, 4, 5]let arr [{name: zhangsan,age: 18},{name: lisi,age: 19}]let copyArr [...arr]copyArr[0].name wangwuconsole.log(copyArr, copyArr)//[ { name: wangwu, age: 18 }, { name: lisi, age: 19 } ]console.log(arr, arr)//[ { name: wangwu, age: 18 }, { name: lisi, age: 19 } ] 2.Array.concat方法 只支持简单结构的拷贝 const number [1, 2, 3, 4, 5]const copy number.concat()copy.push(0)console.log(copy, copy)//[1, 2, 3, 4, 5, 0]console.log(number, number)//[1, 2, 3, 4, 5]const arr[{name:zhangsan,age:18},{name:lisi,age:19}]let arrCopyarr.concat()arrCopy[0].namewangwuconsole.log(arrCopy,arrCopy)//[ { name: wangwu, age: 18 }, { name: lisi, age: 19 } ]console.log(arr,arr)//[ { name: wangwu, age: 18 }, { name: lisi, age: 19 } ] 深拷贝 1.JSON.parse(JSON.stringify(arr)) 支持简单结构和复杂结构的深层拷贝 let number[1,2,3,4,5]let copyJSON.parse(JSON.stringify(number))copy.push(0)console.log(copy,copy)//[1, 2, 3, 4, 5, 0]console.log(number,number)//[1, 2, 3, 4, 5]const arr[{name:zhangsan,age:18},{name:lisi,age:19}]let arrCopyJSON.parse(JSON.stringify(arr))arrCopy[0].namewangwuconsole.log(arrCopy,arrCopy)//[ { name: wangwu, age: 18 }, { name: lisi, age: 19 } ]console.log(arr,arr)//[ { name: zhangsan, age: 18 }, { name: lisi, age: 19 } ] 2. Array.slice方法 支持简单结构和复杂结构的深层拷贝 let numbers[1,2,3,4,5]let numbersCopynumbers.slice()numbersCopy.push(6)console.log(numbersCopy,numbersCopy)//[1, 2, 3, 4, 5, 6]console.log(numbers,numbers)//[1, 2, 3, 4, 5]let arr[{name:zhangsan,age:18},{name:lisi,age:19}]let arrCopyarr.slice()arrCopy.push({name:wangwu,age:20})console.log(arrCopy,arrCopy)//[ { name: zhangsan, age: 18 }, { name: lisi, age: 19 }, { name: wangwu, age: 20 } ] console.log(arr,arr)//[ { name: zhangsan, age: 18 }, { name: lisi, age: 19 } ] 3.Array.map方法 支持简单结构和复杂结构的深层拷贝 let numbers[1,2,3,4,5,8]let copynumbers.map(itemitem)copy.push(9)console.log(copy,copy)//[1, 2, 3, 4, 5, 8, 9]console.log(numbers,numbers)//[1, 2, 3, 4, 5, 8]const arr[{name:zhangsan,age:18},{name:lisi,age:19}]const arrCopyarr.map(itemitem)arrCopy.push({name:wangwu,age:20})console.log(arrCopy--,arrCopy)//[ { name: zhangsan, age: 18 }, { name: lisi, age: 19 }, { name: wangwu, age: 20 } ]console.log(arr--,arr)//[ { name: zhangsan, age: 18 }, { name: lisi, age: 19 } ] Array.from方法 支持简单结构和复杂结构的深层拷贝 const number[1,2,3,4,5]const copyArray.from(number)copy.push(10)console.log(copy,copy)//[1, 2, 3, 4, 5, 10]console.log(number,number)//[1, 2, 3, 4, 5]let arr[{hobby:xxx,age:18},{hobby:yyy,age:19}]const arrCopyArray.from(arr)arrCopy.push({hobby:zzz,age:20})console.log(arrCopy,arrCopy)//[ { hobby: xxx, age: 18 }, { hobby: yyy, age: 19 }, { hobby: zzz, age: 20 } ]console.log(arr,arr)//[ { hobby: xxx, age: 18 }, { hobby: yyy, age: 19 } ]
http://www.zqtcl.cn/news/199772/

相关文章:

  • 潍坊网站建设招聘官方网站建设 在线磐石网络
  • 校友网站建设开一个网站的流程
  • 商业门户网站是什么意思哪家培训机构学校好
  • 青岛企业网站制作seo排名优化培训网站
  • 2018做网站还是app上海搜索seo
  • 网站建设用模板好吗罗湖网站制作费用
  • 网站图片延时加载app推广视频
  • 郑州设计师网站个人搭建网站要多少钱
  • 网站制作成品下载wordpress怎么更改样式
  • 河北省城乡和建设厅网站首页网站维护属于什么部门
  • 西安建网站公司哪家好网站导航条设计欣赏
  • 张家港网站网络优化济南网站建设0531soso
  • 关于网站的建设深圳搜索优化排名
  • 网站建设的布局建设通破解vip
  • 怎样做公司网站介绍网站百度排名优化
  • 广州网站建设工作室招聘wordpress在哪里设置编辑器
  • 苏州网站建设功能大宗交易平台软件
  • 无域名网站 能否被百度品牌营销优化
  • 做爰全过程免费的网站视频做网站视频背景
  • 网站布局设计分析特点手机网站设计欣赏网站
  • 建设网站对服务器有什么要求灌南县规划局网站一品嘉苑规划建设
  • 常平镇仿做网站wordpress教程 菜单
  • 大气的企业网站做网站服务怎么赚钱
  • 如何用网站做淘宝客网易企业邮箱怎么修改密码
  • 白酒网站设计wordpress增加网址大全
  • 网站上图片可以做商业作品吗成都十大景观设计公司
  • 自助建站网站哪个好2017织梦网站怎么做seo
  • 佛山新网站建设咨询做业精灵官方网站
  • 大庆网站设计费用asp网站仿制
  • 革吉网站建设网页游戏中心大全