JavaScript 中的基本類型 vs 物件
JavaScript 中的基本類型和物件有哪些主要區別呢? 首先,讓我們定義一下什麼是基本類型。 JavaScript 中的基本類型有: 字串 (String) 數字 (Number 和 BigInt) 布林值 (true 或 false) 未定義 (undefined) 符號值 (Symbol) null 是一種特殊的基本類型。如果你執行 typeof null,會返回 'object',但它實際上是一種基本類型。 除了基本類型之外的一切都是物件。 函數也是物件。我們可以在函數上設置屬性和方法。typeof 會返回 'function',但函數構造函數是來自於物件構造函數的。 基本類型和物件之間的主要區別有: 基本類型是不可變的,物件只有一個不可變的引用,但其值可以隨時間變化 基本類型是按值傳遞,物件是按引用傳遞 基本類型是按值複製,物件是按引用複製 基本類型是按值比較,物件是按引用比較 如果我們這樣複製一個基本類型: let name = 'Flavio' let secondName = name 現在,我們可以通過將 name 變量賦予一個新值來更改它,但 secondName 仍然保存著舊值,因為它是按值複製的: name = 'Roger' secondName //'Flavio' 如果我們有一個物件: let car = { color: 'yellow' } 然後將其複製到另一個變量: let car = { color: 'yellow' } let anotherCar = car 在這種情況下,anotherCar 指向與 car 相同的物件。如果你設置:...