了解 JavaScript 的按引用傳遞與按值傳遞
在 JavaScript 中,傳遞給函數的參數總是會以值傳遞。這意味著將建立原始值的副本,並且原始值不會受到副本所做的任何變更的影響。但是,當值是物件(包括陣列)時,建立的副本是對原始物件的參考。
這個概念會影響變數在函數內修改時的行為:
例如:
在此範例中,x, y,函數外的z 將具有以下值:x 保持不變為4(原始值),y現在具有附加屬性["foo"](新增的物件屬性),並且z.first 是設定為false(物件屬性已修改)。
要建立物件的完全獨立副本,需要明確地將其所有屬性複製到新物件。這可以使用 Object.assign() 方法或透過遍歷物件並基於舊物件建立具有新屬性的新物件來完成。
以上是JavaScript 的值傳遞機制如何影響函數中的基元變數和物件變數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!