答案是:这取决于!
原始类型是通过值传递的。
对象是通过引用来传递的。
原始类型是数字、字符串、布尔运算、空、未定义和符号。
所有不是原始类型的东西都是一个对象。数组是对象。函数是对象。
当你把一个数字传给一个函数时,它被复制到该函数中。
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