JavaScript:引用傳遞與值傳遞揭秘
在 JavaScript 中,常會提出引用傳遞與值傳遞的話題問題。理解這個概念對於有效編程至關重要。
按值傳遞與按引用傳遞
與流行的看法相反,JavaScript 總是按值將參數傳遞給函數。但是,傳遞的值可以是原始資料類型(數字、字串、布林值、null、未定義)或對物件的參考(陣列、物件)。
原始資料與物件
範例:
考慮程式碼片段:
function f(a, b) { a = 3; b[0] = "foo"; } var x = 4; var y = ["eeny", "miny", "mo"]; f(x, y);
獨立物件克隆
建立沒有任何引用的物件的完全獨立副本,最佳實踐是使用 Object.assign()方法或擴充運算子(...).
範例:
const original = { foo: "bar" }; const clone = { ...original };
在此範例中,複製是原始版本的獨立副本。對克隆的任何修改都不會影響原始版本。
以上是JavaScript 按值或引用傳遞:真實情況是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!