var a = [1];
function f(a){
a[100] = 3;
a = [1,2,3]
}
f(a);
console.log(a)
引用類型函數傳參 傳的是指針的值。直接對其屬性操作的話。改變的是指針指向的地址的值。所以值會變。函數 裏面 第二個 a。是賦值。相對於 把 a 指向了另一個地址。所以原來的a指向的值不會改變
所以 結果是 [1,empty*99,3]
var a = [1];
function f(a){
a[100] = 3;
a = [1,2,3]
}
f(a);
console.log(a)
引用類型函數傳參 傳的是指針的值。直接對其屬性操作的話。改變的是指針指向的地址的值。所以值會變。函數 裏面 第二個 a。是賦值。相對於 把 a 指向了另一個地址。所以原來的a指向的值不會改變
所以 結果是 [1,empty*99,3]