答案是:取決於具體情況!
原始資料類型是按值傳遞。
物件是按址傳遞。
原始資料類型包括數字、字串、布林值、null、undefined和符號。
除了原始資料類型外,其他都是物件。陣列是物件。函式是物件。
當你將一個數字傳遞給一個函式時,它將被複製到該函式內部:
const increment = num => {
num = num + 1
}
const num = 2
increment(num)
console.log(num) //2
如果你傳遞一個物件,它將按址傳遞,所以如果你修改其中一個屬性,原始物件也會被修改:
const increment = num => {
num.value = num.value + 1
}
const num = {
value: 2
}
increment(num)
console.log(num.value) //3