loading

새소식

Langauge/Javascript

[JS] 자바스크립트 객체(Object) 개념

  • -
728x90
반응형

 

▶  객체 (Object) : 주로 데이터 관리를 위해 사용. ( { "Key" : "value"} )

 

   1) 객체의 초기화

// 'object literal' syntax
const obj = {};
// 'object constructor' syntax
const obj = new Object();

 

 

   2) 속성제어 (CRUD)

const obj = { name: 'Mike', age: 20 };
// 속성 조회
console.log(obj.name); // Dot 연산자 사용
console.log(obj['name']); // 대괄호 사용
// 속성 추가 또는 변경
obj.hasJob = false;
obj['hasJob'] = true;
console.log(obj.hasJob);
// 속성 삭제
delete obj.hasJob;
console.log(obj.hasJob);

 

 

  3) 속성 존재 확인 (boolean 값 반환 : Key in 객체이름 사용)

const user = {
name: 'Bill',
age: 20,
hasCar: true
}
console.log('name' in user); // true
console.log('age' in user); // true
console.log('random' in user); // false
console.log(user.hasCar); // true

 

 

 4) 객체의 복사

   - 대입 연산자 사용 시 문제점

const user = { name: 'Bill', age: '20' };
const user2 = user;
user2.name = 'Steve';
console.log(user.name); // Steve 
// user2 속성의 값을 변경하면 user 속성의 값도 같이 변경

 

 

   - assign() 을 사용

const user = { name: 'Bill', age: 20 };
const user2 = {};
for (const key in user) {
user2[key] = user[key];
}
user2.name = 'Steve';
console.log(user2);
const user3 = {};
Object.assign(user3, user);
user3.age = 30;
console.log(user3);
console.log(user);

 

728x90
반응형
Contents

📝 포스팅 주소를 복사했습니다 📝

이 글이 도움이 되었다면 공감 부탁드립니다👍