5/9 TIL

이세영·2024년 5월 10일
1
post-custom-banner

오늘 배운 내용(TIL: Today I Learned) - JavaScript에서 객체를 활용하여 나이가 증가한 사용자 정보 생성하기


핵심 개념:

  • 객체(Object) 복사: JavaScript에서 객체를 다룰 때, 객체의 복사본을 생성하는 것은 객체의 불변성을 유지하고 원본 데이터를 보호하기 위해 중요하다.
  • 데이터 불변성(Immutability): 데이터 불변성은 데이터나 객체가 한 번 생성되면 그 이후로 변경되지 않는 성질을 의미한다. 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에서 객체를 안전하게 다루는 방법 중 하나는 객체의 불변성을 유지하는 것이다. 오늘 배운 스프레드 연산자를 활용한 객체 복사와 속성 업데이트 방법은 데이터 불변성을 유지하면서도 필요한 데이터 변화를 적용할 수 있는 효과적인 방법이다.

profile
블로그 관리 하루에 한번씩 도전!
post-custom-banner

0개의 댓글