值是通過引用傳遞還是通過JavaScript中的值傳遞?

答案是:這要看情況!

基本類型按值傳遞。

對象通過引用傳遞。

基本類型是數字,字符串,布爾值,null,未定義和符號。

所有不是原始類型的東西都是目的。數組是對象。功能是對象。

當您將數字傳遞給函數時,它會被複製到函數中:

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

免費下載我的JavaScript初學者手冊


更多js教程: