객체의 key-value 에 접근하기: for ... in, Object.keys, in 연산자

Minjae Kwon·2020년 10월 28일
0

 🍉   Learning Journal

목록 보기
10/36
post-thumbnail

🙋🏻‍♀️ 객체의 dot notation, bracket notation 은 어떻게 구분해서 사용할까?

bracket notation 안에는 동적인 변수를 담을 수 있다. 즉, 반복문 등에서 유용!

const gelato = { flavor: "blood orange" }

gelato[flavor] // Error: flavor is not defined 
gelato['flavor'] // "blood orange"
gelato.flavor // "blood orange"

🙋🏻‍♀️ 객체를 순회하고 싶을 때는?

for in 문법을 사용한다. (배열은 for of 문법) 인덱스 등 순서성을 가지고 접근할 수는 없지만, 객체의 각 키에 접근함으로써 결과적으로 키의 값도 핸들링할 수 있다.

let song = {
	title: "Seoul jazz night",  
	artist: "Skyblue",
	year: 2020
}

for(const prop in song){
	if(prop === 'year'){
		delete song[prop]; 
	}
} // true; 

console.log(song); // {title: "Seoul jazz night", artist: "Skyblue"}

🙋🏻‍♀️ Object.keys(객체이름) 은 언제 사용할까?

Object.keys() 는 객체의 키만 모아서 배열로 리턴해주는 메소드다.

let song = {
	title: "Seoul jazz night",  
	artist: "Skyblue",
	year: 2020
}
Object.keys(song); // [ "title", "artist", "year"]

객체에 어떤 키가 있는지 확인하기 위해서 Object.keys() 로 배열을 만들어서 indexOf 등으로 검사해도 되겠지만, in 연산자로 쓰면 빠르게 boolean 값으로 확인할 수 있다.

"title" in song // true; 
"genre" in song // false; 
profile
Front-end Developer. 자바스크립트 파헤치기에 주력하고 있습니다 🌴

0개의 댓글