最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JS 數(shù)組和對(duì)象的深拷貝操作示例

 更新時(shí)間:2020年06月06日 10:11:48   作者:Jacano  
這篇文章主要介紹了JS 數(shù)組和對(duì)象的深拷貝操作,結(jié)合實(shí)例形式分析了JS 數(shù)組和對(duì)象的深拷貝基本原理與操作技巧,需要的朋友可以參考下

本文實(shí)例講述了JS 數(shù)組和對(duì)象的深拷貝操作。分享給大家供大家參考,具體如下:

一.數(shù)組的深拷貝

let arr = [
 undefined,
 function(){
  console.log(123); 
 },
 true,
 null,
 {
  name:"123",
  age:23
 }
];
// arr作為拷貝對(duì)象

1. Array.from()

Array.from()能將一個(gè)類數(shù)組轉(zhuǎn)化成一個(gè)真正的數(shù)組,因此它返回的是一個(gè)新數(shù)組。

let arr1 = Array.from(arr);
arr[0] = 2;
console.log(arr1);
// [ undefined, [Function], true, null, { name: '123', age: 23 } ]

2. Object.assign()

let arr1 = Object.assign([], arr)
arr[0] = 2;
console.log(arr1);
// [ undefined, [Function], true, null, { name: '123', age: 23 } ]

此方法也可用作對(duì)象的深拷貝

3. Slice()

let arr1 = arr.slice(0);
arr[0] = 2;
console.log(arr1);
// [ undefined, [Function], true, null, { name: '123', age: 23 } ]

4. Concat()

let arr1 = arr.concat();
arr[0] = 2;
console.log(arr1);
// [ undefined, [Function], true, null, { name: '123', age: 23 } ]

5. 擴(kuò)展運(yùn)算符深拷貝

// let [...arr1] = arr; // 這兩種都可以
let arr1 = [...arr];
arr[0] = 2;
console.log(arr1);
// [ undefined, [Function], true, null, { name: '123', age: 23 } ]

此方法也可用作對(duì)象的深拷貝

二.對(duì)象的深拷貝

let obj = {
 name: "a",
 age: 20,
 sex: false,
 user: {
  a: 20,
  n: "b"
 },
 f: function(){
  return 1;
 },
 u: undefined,
 n: null
}

用擴(kuò)展運(yùn)算符和Object.assign()方法可以深拷貝對(duì)象

let obj1 = Object.assign({}, obj)
obj[age] = 2;
console.log(obj1);
// let obj = { name: "a", age: 20, sex: false,user: {a: 20,n: "b},f: function(){return 1;},u: undefined,n: null}

感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運(yùn)行工具http://tools.jb51.net/code/HtmlJsRun測(cè)試上述代碼運(yùn)行效果。

更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《javascript面向?qū)ο笕腴T教程》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)

希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論

蓬溪县| 二连浩特市| 南召县| 绥江县| 岳普湖县| 西平县| 西丰县| 延川县| 如东县| 鱼台县| 苗栗市| 牟定县| 东宁县| 安福县| 镇康县| 阿荣旗| 武定县| 化隆| 自治县| 南华县| 长阳| 清原| 长寿区| 成都市| 波密县| 藁城市| 丹江口市| 钟山县| 金阳县| 睢宁县| 牙克石市| 泰州市| 石楼县| 延津县| 碌曲县| 英山县| 绍兴县| 金山区| 淮阳县| 忻州市| 文昌市|