Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 컴포넌트
- tanStack Query
- 국제화(i18n)
- 웹 성능 최적화
- 웹개발
- React
- 코드리뷰
- JavaScript
- 프라미스체이닝
- Node.js
- 동적 웹 페이지
- 상태 관리 라이브러리
- 자바스크립트
- 웹 성능
- 자바스크립트공부
- 퍼포먼스 최적화
- #프론트엔드개발
- 비동기 요청 처리
- 프론트엔드
- fe
- Promise
- html
- 비동기프로그래밍
- 풀스택 개발
- jsx
- dom
- 웹 개발
- css
- 리액트 기초
- 패키지 스크립트
Archives
- Today
- Total
sodol-dotcom
객체 구조 분해 할당 (Destructuring Assignment) 본문
1. 개념
- 구조 분해 할당은 객체나 배열의 값을 간편하게 변수에 할당할 수 있도록 해주는 문법이다.
- 이 기능을 사용하면 코드가 더 간결하고 이해하기 쉬워진다.
2. 객체 구조 분해 할당
const person = {
name: "Alice",
age: 25,
job: "developer"
};
- `person`은 `name`, `age`, `job`이라는 세가지 프로퍼티를 가진 객체이다.
2-1. 기본적인 변수 할당
- 객체의 속성 값을 변수에 할당하려면 다음과 같이 작성한다.
const name = person.name; // name 변수에 "Alice" 할당
const age = person.age; // age 변수에 25 할당
- 이 문장은 `person` 객체에서 `name`과 `age` 프로퍼티의 값을 각각 변수 `name`과 `age`에 할당한다.
3. 문법 구조 설명
- 구조 분해 할당의 형태: const { property1, property2 } = object;
- 중괄호 `{}`의 사용:
- 중괄호는 객체의 속성을 지정하기 위해 사용한다.
- 중괄호 안의 변수 이름은 객체의 속성과 일치해야 한다.
4. 할당 과정
- JavaScript는 다음과 같은 방식으로 구조 분해 할당을 수행한다.
1) `person` 객체에서 `name` 프로퍼티의 값을 찾아 `name` 변수에 할당한다.
2) `person` 객체에서 `age` 프로퍼티의 값을 찾아 `age` 변수에 할당한다.
5. 중복 선언이 아닌 이유
- 맨 위 코드에서 `const person`으로 `person` 객체를 선언한 후, `const { name, age } = person;`에서 `name`과 `age`라는 새로운 변수를 생성하는 것이므로 중복 선언이 아니다.
- 즉, `const { name, age } = person;`에서는 `person`을 재선언하는 것이 아니고, `person` 객체 안에서 `name`과 `age`라는 프로퍼티를 꺼내서 새로운 변수 `name`과 `age`를 선언하는 것이다.
- `name`과 `age`는 각각 `person` 객체의 속성과 같은 이름을 가지고 있지만, 별도의 새로운 변수들을 (name, age)을 생성한다.
'Fundamentals > JavaScript' 카테고리의 다른 글
JavaScript에서 함수 선언과 export default 방식의 차이 (0) | 2024.10.02 |
---|---|
JavaScript에서 함수 export 방식 비교: export, export default, export {} 차이 (0) | 2024.10.02 |
Node.js와 패키지 스크립트 (1) | 2024.10.01 |
함수 참조와 함수 실행: console.log(getData)와 console.log(getData())의 차이 (1) | 2024.10.01 |
Promise Chaining 이해하기: 기존의 프라미스와 반환된 프라미스 (0) | 2024.10.01 |