오늘 배운 내용(TIL: Today I Learned) - JavaScript에서 객체를 활용하여 나이가 증가한 사용자 정보 생성하기
var user = {
name: "john",
age: 20,
}
var getAged = function (user, passedTime) {
// 객체 복사 및 나이 증가 로직
var newUser = {
...user, // 스프레드 연산자를 사용하여 user 객체를 newUser 객체에 복사
age: user.age + passedTime // newUser의 age 속성을 업데이트
};
return newUser;
}
var agedUser = getAged(user, 6);
var agedUserMustBeDifferentFromUser = function (user1, user2) {
if (!user2) {
console.log("Failed! user2 doesn't exist!");
} else if (user1 !== user2) {
console.log("Passed! If you become older, you will be different from you in the past!")
} else {
console.log("Failed! User same with past one");
}
}
agedUserMustBeDifferentFromUser(user, agedUser);
...
)를 사용하여 객체를 새로운 객체로 복사하고, 특정 속성(예: age
)만 업데이트하는 방법을 배웠다. 이를 통해 원본 객체는 변하지 않고, 수정된 새로운 객체를 생성할 수 있다.JavaScript에서 객체를 안전하게 다루는 방법 중 하나는 객체의 불변성을 유지하는 것이다. 오늘 배운 스프레드 연산자를 활용한 객체 복사와 속성 업데이트 방법은 데이터 불변성을 유지하면서도 필요한 데이터 변화를 적용할 수 있는 효과적인 방법이다.