자바스크립트에서 객체의 속성에 접근하는 방법은 여러 가지가 있습니다. 이번 포스트에서는 자바스크립트 객체 속성 접근에 대해 알아보겠습니다.
1. 점 표기법 (Dot notation)
가장 일반적인 방법은 점 표기법을 사용하는 것입니다. 점 표기법을 사용하여 객체의 속성에 접근할 수 있습니다.
예를 들어, 다음과 같은 객체가 있다고 가정해봅시다.
var person = {
name: "John",
age: 30,
address: {
city: "New York",
street: "123 Main St"
}
};
객체의 속성에 접근하기 위해서는 다음과 같이 사용할 수 있습니다.
var name = person.name; // "John"
var city = person.address.city; // "New York"
2. 대괄호 표기법 (Bracket notation)
또 다른 방법은 대괄호 표기법을 사용하는 것입니다. 대괄호 표기법은 점 표기법과 유사하지만, 변수를 사용하여 동적으로 속성에 접근할 수 있습니다.
예를 들어, 다음과 같은 변수가 있다고 가정해봅시다.
var propertyName = "name";
이 변수를 사용하여 대괄호 표기법으로 객체의 속성에 접근할 수 있습니다.
var name = person[propertyName]; // "John"
3. 옵셔널 체이닝 연산자 (Optional Chaining Operator)
ES2020에서는 옵셔널 체이닝 연산자가 도입되어서 객체의 중첩된 속성에 접근할 때 유용하게 사용될 수 있습니다. 이 연산자를 사용하면 중첩된 속성이 존재하지 않는 경우 에러를 발생시키지 않고 undefined
를 반환합니다.
옵셔널 체이닝 연산자는 ?.으로 표기하며 다음과 같이 사용할 수 있습니다.
var street = person.address?.street; // "123 Main St"
var zipCode = person.address?.zipCode; // undefined
4. Object Destructuring (객체 비구조화 할당)
ES2015부터 도입된 객체 비구조화 할당은 속성에 접근하는 또 다른 방법입니다. 객체 비구조화 할당을 사용하면 객체에서 원하는 속성을 추출하여 변수에 할당할 수 있습니다.
예를 들어, 다음과 같은 객체가 있다고 가정해봅시다.
var person = {
name: "John",
age: 30,
address: {
city: "New York",
street: "123 Main St"
}
};
객체 비구조화 할당을 사용하여 속성에 접근할 수 있습니다.
var { name, address: { street } } = person;
console.log(name); // "John"
console.log(street); // "123 Main St"
자바스크립트에서 객체의 속성에 접근하는 다양한 방법을 알아보았습니다. 각각의 방법은 특정 상황에 따라 유용하게 사용될 수 있으므로, 적절하게 선택하여 사용해야 합니다.