728x90
반응형
javascript에서 객체(Object)의 키값을 수정하는 방법을 찾아보니 아래와 같은 방법이 제일 많이 눈에 띄었다.
1) 새로운키에 기존키를 복사
2) 기존키를 삭제
샘플코드를 보면서 한번 테스트 해보자. 어렵지 않으니 그냥
샘플코드를 개발자도구 콘솔에 직접 찍으면서 테스트 해보면 바로 이해 될 것이다.
객체의 속성 복사/삭제를 통해 키(Key)값 수정
샘플코드
let myObj = {
name : 'michelle',
age : 18,
height : 180
};
myObj['myName'] = myObj['name'];
delete obj['name'];
// 아래와 같이 작성하여도 됨
// myObj.myName = myObj.name;
// delete myObj.name;
console.log(myObj.myName); // 👉️ {myName: 'michelle'}
이 코드를 보면 다음과 같은 로직을 수행한다.
1) myObj 객체 생성
2) myObj에 myName이라는 속성을 생성함과 동시에 name속성을 복사
3) myObj의 name 속성을 delete
이 방법 말고도 assign함수를 사용하는 방법도 있다. 코드는 아래와 같다.
Object.assign 함수를 이용한 키값 변경
샘플코드
let myObj = {
name : 'michelle',
age : 18,
height : 180
};
delete Object.assign(myObj, {myName: myObj.name})['name'];
console.log(myObj.myName); // 👉️ {myName: 'michelle'}
해당 코드는 Object.assign 함수를 이용해서 키값을 변경해준다.
하지만 로직은 똑같다. 키값을 복사하고 기존 키값을 삭제하는 로직이다.
다른 점은 조금 더 코드가 깔끔해지는 것 뿐..
728x90
반응형
'FrontEnd > JavaScript' 카테고리의 다른 글
[JS] javascript : delete를 통해 배열안에 있는 객체에서 특정 key값을 한번에 삭제하는 방법 + delete 연산자 (0) | 2022.12.17 |
---|---|
[JS] javascript : 객체(Object)의 key값 한번에 수정(rename)하는 함수 (0) | 2022.12.15 |
[JS] javascript : 이벤트리스너(EventListener) 한번만 수행하도록 옵션을 주는 방법 (0) | 2022.12.14 |
[JS] javascript : delete연산자를 통한 객체(Object)의 속성을 삭제하는 방법 (0) | 2022.12.14 |
[JS] javascript : encodeURI/encodeURIComponent함수를 이용하여 인코딩을 해보자 (0) | 2022.12.12 |