[ JavaScript ] 객체

초초·2022년 12월 30일
1

💻📚 TIL

목록 보기
6/22

객체를 사용하는 이유

객체는 한 변수에 여러 정보를 담아 사용할 수 있다

이런 식으로 각 변수에 정보들을 각각 할당하면 각 변수 간 관계성을 알 수 없고,
변수가 너무 많이 만들어진다는 불편함이 있음


배열을 사용하면 정보간의 관계성을 알 수 있지만
각 인덱스에 해당하는 요소가 어떤 정보를 의미하는지 알 수 없음
배열에 대한 구조를 알고 있는 사람만 각 인덱스 정보를 정확하게 접근할 수 있음


키와 값이 쌍으로 이루어져 있으며 {}안에 키:값이 존재 각 정보쌍은 ,(쉼표)로 구분해줌
객체는 하나의 변수 안에 여러가지 정보가 담겼을 때 적합한 자료구조
ex) 주소록, 회원정보 등

키:값 한쌍은 속성(프로퍼티)라고 불리며 모든 타입의 값이 프로퍼티가 될 수 있다
(배열, 객체, 함수, boolean 등등)

객체의 값을 사용

Dot notation

점을 사용하여 접근 - 객체의 속성을 가져옴

user.firstName; // 'Steve'
user.city; // 'Seoul

Bracket notation

키 값이 (동적으로 변할 때)변수일 때 Bracket notation을 사용

[]대괄호를 사용하는데 ''로 감싸주는 구조 => 문자열로 들어가야함

user['firstName']; // 'Steve'
user['city']; // 'Seoul
user[city] // !주의 -- 이때는 city를 변수로 취급하기 때문에 값이 나오지 않음

객체에 속성 추가/삭제

속성 값 추가하기

user['category'] = '직장인';
user.isWorking = true;
user.dislike ['월요일', '맛없는 점심'];
+
Object.assign(객체1, 객체2) -- 두 객체를 합쳐줌(복붙) 원본 객체는 변경하지 않음
(arr.slice()와 비슷하게도 사용 가능)

속성 값 삭제하기

delete user.dislike;
//결과
user.firstName; // 'Steve'
...
user['category']; // '직장인';
user.isWorking; // true;

객체의 속성 값을 확인

in 연산자

객체에 키가 있는지 확인
'firstName' in user; // true
'dislike' in user; // false
Object.keys(객체) -- 객체의 키만 배열로 
Object.values(객체) -- 객체의 값만 배열로 

객체의 반복문

for (const property in object) {
	console.log(`${property}: ${object[property]}`);
}
/*
for(let 키 in 객체){
   //객체의 모든 키를 처음부터 끝까지 순회
}
*/
profile
잔디 꽉꽉 심쟈 🍀

0개의 댓글