es6三個點是深拷貝嗎

2022-10-09 12:36:09 字數 464 閱讀 8505

es6中三個點是否是深拷貝:1、當元素是一層陣列或是物件時,也即元素只是簡單型別的元素,那麼三個點此時是深拷貝;2、當陣列或物件的元素是引用型別的元素時,三個點是淺拷貝。

本教程操作環境:windows10系統、ecmascript 6.0版、dell g3電腦。

擴充套件運算子既不是深拷貝,也不是淺拷貝。一半一半,他只能深拷貝第一層。第二層的拷貝還是淺拷貝

一層陣列或是物件,其元素只是簡單型別的元素

let aa =

let bb = ;

bb.age = 22;

console.log(aa.age); // 18陣列或物件中的元素是引用型別的元素

let aa =

}let bb = ;

bb.address.city = 'shenzhen';

console.log(aa.address.city); // shenzhen如何使得深拷貝

ES6 淺拷貝和深拷貝

1.深拷貝 是指修改拷貝的新變數不會改變原有變數的值,新變數與原有變數指向不同的記憶體位址 基本資料型別一般是深拷貝,修改b的值不會影響a let a 1 let b a b 2 console.log a,b 1 22.淺拷貝 是指修改拷貝的新變數會改變原有變數的值,新變數與原有變數指向相同的記憶...

es6 擴充套件運算子 三個點( )

看了阮大大的文章,發現很多都有運算子 暫且叫運算子 三個點點。於是查了一下。其實看起來這樣用也很6 乾貨如下 表面意思 擴充套件運算子 spread 是三個點 它好比 rest 引數的逆運算,將乙個陣列轉為用逗號分隔的引數序列。該運算子主要用於函式呼叫。function push array,ite...

ES6 拓展運算子 三個點

es6中引入擴充套件運算子 它用於把乙個陣列轉化為用逗號分隔的引數序列,它常用在不定引數個數時的函式呼叫,陣列合併等情形。因為typescript是es6的超集,所以typescript也支援擴充套件運算子。1 可變引數個數的函式呼叫function push array,items functio...