Call By Value

Primitive 타입은 call by value로 값만 복사된다.

let name = 'jacob';
let newName = name;

name = 'master jung';

console.log(newName); // jacob
console.log(name); // master jung

Call By Reference

Primitive 타입이 아닌 객체 타입은 reference로 전달된다.

let nameObj = {
	name: 'jacob'
}
function changeName(nameObj) {
	return nameObj.name = 'master jung';
}

console.log(changeName(nameObj)); // master jung
console.log(nameObj); // master jung