- 객체는 key와 value로 구성된 프로퍼티(Property)들의 집합이다.
- 객체는 중괄호를 이용해 데이터를 저장할 수 있다.
- 중괄호 안에는 key : value 형식으로 구성된 프로퍼티가 존재한다.
- key는 문자형, value는 모든 자료형이 허용된다.
- 각각의 프로퍼티는 쉼표로 구분한다.
- 프로퍼티의 값으로 자바스크립트에서 사용할 수 있는 모든 값을 사용할 수 있다.
- 프로퍼티 값으로 함수를 사용할 수 있으며, 프로퍼티 값이 함수일 경우, 일반 함수와 구분하기 위해 메소드라 칭한다.
let obj = new Object(); // 객체 생성자 문법
let obj2 = {key : value}; // 객체 리터럴 문법
객체를 선언할 땐 중괄호를 이용해 객체를 선언하는 객체 리터럴 문법을 주로 사용한다.
let userInfo = {
name : 'lee', // key : value
age : 30,
location : 'incheon'
}
console.log(userInfo); // 객체에 접근. { name: 'lee', age: 30, location: 'incheon' }
객체를 생성한 이후 프로퍼티 추가, 삭제
가 별도로 가능하다.
userInfo.hobby : 'soccer';
프로퍼티를 삭제하려면 delete를 사용하면 된다.
delete userInfo.hobby;
프로퍼티를 수정하려면 점 표기법을 이용해 값만 재지정하면 된다.
userInfo.location = 'Seoul';
점 표기법을 이용해 객체명.key 구조로 출력 가능하다.
console.log(userInfo.location); // 변경된 Seoul 출력
console.log(userinfo['location']; // 위 출력내용과 동일하다.
변수 명명 규칙과 다르게 프로퍼티는 for, let, return 등의 예약어로 지정이 가능하다.
다만 굳이 예약어의 이름으로 생성하진 말자.
참고사이트
ko.javascript