物件的淺拷貝,包括拷貝物件原型的屬性

2021-09-02 23:42:11 字數 1639 閱讀 3453

const s = symbol('s');

// 測試物件

const test =

},arr: [0, 1, 2],

date: new date('1996/03/03'),

reg: new regexp(/我是乙個正則/ig),

err: new error('我是乙個錯誤'),

[s]: '我的key是symbol',

noenumerable: '我是手動設定的不可列舉屬性',

func() ,

get num1() ,

set num1(val)

};object.defineproperty(test, 'noenumerable', );

// 建立乙個新物件,使用現有的物件來提供新建立的物件的_proto_

const testchild = object.create(test);

繼承的可列舉屬性 (yes)

自身的不可列舉屬性 (no)

自身的symbol屬性 (yes)

繼承的可列舉屬性 (yes)

自身的不可列舉屬性 (no)

自身的symbol屬性 (yes)

繼承的可列舉屬性 (no)

自身的不可列舉屬性 (yes)

正確的拷貝getter與setter (yes)

自身的symbol屬性 (yes)

物件的淺拷貝

西城舊夢夢舊人 2017 03 23 22 39 乙個類實現cloneable介面,那麼它就具有了被拷貝的能力,如覆寫clone方法之後就完全具備拷貝的能力。因為拷貝是在記憶體中進行的,所以在效能上比new生成物件要快很多,那麼,拷貝是完全拷貝嗎?下面看乙個例子。public class perso...

物件的淺拷貝和深拷貝

淺拷貝 1.用for迴圈獲取引用物件的屬性和值,賦值給新物件 object.prototype.num 1 person1 function clone origin,target for var key in origin return tar var person2 clone person1 ...

物件的淺拷貝和深拷貝

淺拷貝 python拷貝一般都是淺拷貝。拷貝時,物件包含的子物件內容不拷貝。因此,源物件和拷貝物件引用同乙個物件 深拷貝 使用copy模組的deepcopy函式,遞迴拷貝物件中包含的子物件。源物件和拷貝物件所有的子物件也不同 變數的數值操作 只是形成兩個變數,實際上時指向同乙個物件 測試淺拷貝和深拷...