기본 개념
자바스크립트는 객체기반 패러다임에 의해 만들어졌다.
여기서 객체(Object)는 프로퍼티(Properties)로 구성되어 있는데, 프로퍼티는 이름(Key)과 값(Value)로 구성되어 있다.
자바스크립트의 객체는 아래 이미지와 같이 현실세계에 빗대어 이해할 수 있다.
자바스크립트에서 객체는 단독으로 존재하는 개체(Entity)이며, 프로퍼티와 타입(Type)을 가진다.
사람(Human)이라는 객체가 있다고 가정하자. 그렇다면 아래 이미지와 같은 고유한 특성을 가진 프로퍼티를 생성할 수 있다.
객체 생성 방법
객체 생성 방법은 new Object(), Object.create(), 객체 초기자(Object Initializer)를 통한 리터럴 표기법이 있다.
객체 초기자를 사용한 객체 생성 방법은 다음과 같다.
var employee = { name: 'Bob', age: 25, job: 'Dev', city: 'New York', email: 'bob@web.com' }
employee 객체를 생성했고, 괄호( { } ) 안에 key : value 쌍으로 이루어진 객체 속성명 및 값을 정의했다.
개별 속성에 접근하려면 객체 뒤에 점( . ) + 속성 이름을 통해 접근할 수 있다.
만약 name 속성에 접근하고 싶다면, employee.name으로 접근하면 'Bob'이라는 값을 얻을 수 있다. 또한 대괄호( [ ] )안에 식별자(key) 이름을 적어서 값에 접근하는 방법도 가능하다.
var employee = { name: 'Bob', age: 25, job: 'Dev', city: 'New York', email: 'bob@web.com' }
// 객체의 값 가져오기
방법 1. employee.name
방법 2. employee['name']
객체의 반복
객체의 반복은 for in 구문을 사용한다. for in 구문은 열거 가능한(enumerable) 객체의 속성을 반복할 때 사용된다.
for in 구문은 순서가 없는 객체의 속성을 반복할 때 사용되는데, 따라서 배열과 같이 열거된 순서 그대로 값을 출력하지 않는다. 배열의 경우 forEach() 또는 for of 구문을 통해 반복문을 수행하는 것을 추천한다.
기본 공식은 다음과 같다.
for(변수명 in 객체이름){
- 구문 -
}
기본 공식을 적용하면 다음과 같다.
for(var prop in employee){
console.log(prop)
}
//name
//age
//job
//city
//email
기본적으로 for in을 통해 객체를 반복하면 객체 식별자(key)를 출력한다.
객체의 값(value)를 출력하려면 다음과 같이 작성해야 한다.
for(var prop in employee){
console.log(employee[prop]) // 객체[식별자(key)]
}
//Bob
//25
//Dev
//New York
//bob@web.com
'Programming > JavaScript' 카테고리의 다른 글
[JavaScript] JSON 기본 개념 (0) | 2022.02.17 |
---|---|
[JavaScript] 시:분:초 두 자릿수로 표기하기 (0) | 2021.11.05 |
[JavaScript] Template Literals (0) | 2021.08.30 |
[JavaScript] 값 입력 후 엔터(Enter)키 눌렀을 때 이벤트 실행 (3) | 2021.07.27 |
[Javascript] .attr() / .prop() (0) | 2021.05.31 |