色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

javascript 地址傳遞

傅智翔1年前8瀏覽0評論

JavaScript 地址傳遞

在 JavaScript 中,變量是按值傳遞還是按引用傳遞的?這是一個常見的問題,也是一個深入的問題。不過,簡短的答案是:JavaScript 變量是按值傳遞的。同時,JavaScript 對象是按引用傳遞的。

按值傳遞是指把變量復制給函數作為參數的過程。按引用傳遞是指把變量的地址(引用)復制給函數作為參數。

看一個例子:

let x = 10;
function changeValue(v){
v = 20;
}
changeValue(x);
console.log(x); // 10

輸出結果為 10,說明按值傳遞確實是把變量復制后傳遞的。

再來看一個例子:

let person = {
name: "Tom"
}
function changeName(p){
p.name = "Jerry";
}
changeName(person);
console.log(person.name); // Jerry

輸出結果是 Jerry,說明按引用傳遞確實是把變量的地址復制后傳遞的。這里 p 和 person 指向同一個對象。

還有一個例子:

let a = [1, 2, 3];
function changeArray(arr){
arr.push(4);
}
changeArray(a);
console.log(a); // [1, 2, 3, 4]

輸出結果是 [1, 2, 3, 4],說明按引用傳遞確實是把變量的地址復制后傳遞的。這里 arr 和 a 指向同一個數組。

總體來說,JavaScript 還是按值傳遞的,只有在處理對象和數組時才會出現按引用傳遞的情況。

參考鏈接:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Functions