상세 컨텐츠

본문 제목

[Typescript] for loop (for in)구현하기

Typescript

by 일단두잇 2023. 2. 18. 11:36

본문

반응형

 

javascript에서 object 요소를 가져올때 for in loop를 많이 사용하는데,

typescript에서는 해당 문법에서 eslint type 오류가 발생합니다.

key, value 타입 정의가 없어서 그런데요,

 

type을 [key:string]:unkown으로 설정하는 방법도 있겠지만,

 

그보다는, javascript Object 문법을 사용하면 type정의 필요없이 구현이 가능합니다.

 


Object.entries()

Object.entries() 메서드는 for...in와 같은 순서로 주어진 객체 자체의 enumerable 속성 [key, value] 쌍의 배열을 반환합니다.

 

Object.assign()

Object.assign() 메서드는 출처 객체들의 모든 열거 가능 자체 속성을 복사해 대상 객체에 붙여넣습니다. 그 후 대상 객체를 반환합니다.

const obj = { name:'이름', title:'제목'}
const newObj = {}
/**
for (const i in obj) {
     newObj[i] = obj[i];
}
**/

for (const [key, value] of Object.entries(obj)) {
   Object.assign(newObj, { [key]: value });
}

// output : newObj = { name:'이름', title:'제목'}
 
 

 

 

반응형

관련글 더보기

댓글 영역