자바스크립트로 객체 키 값 업데이트하기

자바스크립트로 객체 키 값 업데이트하기

2022-10-19 last update

7 minutes reading javascript beginners typescript webdev
Javascript objects 키 값 쌍으로 구성되며 Javascript에서 가장 일반적인 데이터 구조 중 하나입니다.

개체의 모든 값을 업데이트하는 가장 쉬운 방법은 다음과 같습니다.
  • Object.keys를 사용하여 개체의 모든 키를 가져옵니다.
  • 논리를 적용하여 업데이트해야 할 값을 결정합니다.
  • forEach 또는 for 와 같은 루프를 사용하여 각각의 값을 업데이트하십시오.

  • 예를 들어:

    let myObject = {
        name: "John", 
        skillItem1: 4,
        skillItem2: 7,
        skillItem3: 2,
        skillItem4: 1
    }
    
    // Updates any numerical values that are more than or equal to 4, and changes them to 10:
    Object.keys(myObject).forEach((item) => {
        if(typeof myObject[item] == "number" && myObject[item] >= 4) {
            myObject[item] = 10
        }
    })
    
    console.log(myObject)
    // Returns:
    // let myObject = {
    //     name: "John", 
    //     skillItem1: 10,
    //     skillItem2: 10,
    //     skillItem3: 2,
    //     skillItem4: 1
    


    논리를 적용할 필요는 없지만 일반적으로 유용합니다. for 루프를 사용하여 이를 달성할 수도 있습니다. 이는 forEach 를 사용하는 것보다 약간 빠릅니다.

    
    let myObject = {
        name: "John", 
        skillItem1: 4,
        skillItem2: 7,
        skillItem3: 2,
        skillItem4: 1
    }
    
    // Updates any numerical values that are more than or equal to 4, and changes them to 10:
    for(let item of Object.keys(myObject)) {
        if(typeof myObject[item] == "number" && myObject[item] >= 4) {
            myObject[item] = 10
        }
    }
    
    console.log(myObject)
    // Returns:
    // let myObject = {
    //     name: "John", 
    //     skillItem1: 10,
    //     skillItem2: 10,
    //     skillItem3: 2,
    //     skillItem4: 1
    


    개체에서 하나의 값만 업데이트하려면 대괄호 표기법[]을 사용하여 업데이트할 키를 선택합니다. 예를 들어:

    let myObject = {
        name: "John", 
        skillItem1: 4,
        skillItem2: 7,
        skillItem3: 2,
        skillItem4: 1
    }
    
    // Updates `skillItem2` to 15
    myObject['skillItem2'] = 15;
    


    Javascript objects are created by reference , 이는 우리가 위의 변경을 수행할 때 원래 객체를 변경한다는 멋진 표현입니다. 이는 또한 Object.values() 가 객체의 값을 업데이트하는 것을 허용하지 않는다는 것을 의미합니다. 이것이 Object.keys() 를 사용해야 하는 이유입니다.