[📝TIL 11_1]React 입문하기

2024. 12. 30. 16:24·Product design/내일배움캠프

|  2024년 12월 30일 월요일 TO DO  |

✔️ JavaScript 숙제 수정 및 제출

✔️ React 입문 1주차

✔️ UX 리서치


⭐️ 오늘 배운 내용

React 입문 

 변수 

- var 키워드는 많이 사용하지 않는다. 가장 많이 사용하는 변수 선언 방식은 const와 let이다.

 

변수가 왜 필요한가?
1. 변수는 데이터를 저장할 뿐만 아니라 관리의 용이하다.

- 저장 후 자바 스크림트 소스 코드의 많은 곳에서 재사용하는 매커니즘을 사용한다.

 

2. 프로그램이 복잡해지는 복잡성을 어느정도 막고 관리한다.

- 변수가 없으면 직접 모든 값을 기입해야하는데, 이렇게되면 코드가 복잡해지고 오류 가능성도 높아진다.

- 위에서의 재사용하는 매커니즘이 사라지게되면 확장성과 유지 보수성이 떨어질 수 밖에 없다.

 

3. 재사용성 및 유지보수의 향상

- 변수를 통해 정의된 데이터 값을 여러 위치에서 재사용 할 수 있다.

 

 변수의 종류 

변수의 종류에는 어떤 것이 있나?

- let, const, var

 

어떻게 분류를 하나?

1. 스코프(유효 범위)에 따른 분류

- 글로벌 > 블록(중괄호 안 영역에 쓰일 수 있는 블록) > 함수(function 키워드로 감싸진 영역

let, const, var의 스코프 변수는 무슨 차이가 있을까?
- 블록 스코프 변수 let, const는 선언된 블록 내에서만 접근할 수 있다.
- 함수 스코프 변수 var 는 선언된 함수 내에서 유효하다.

 

2. 재할당 가능성에 따른 분류

- 이미 선언된 변수의 값을 다시 저장할 수 있는지에 대한 것이다.

- const는 재할당이 되지않고, let이나 var는 재할당 가능하다.

 

 

 const - 블록스코프 

const의 중요성

- constant value로, 상수용으로 많이 쓰인다.

- const를 사용해서 상수를 선언하게되면 프로그램 내에서 값이 변경되지 않는 변수를 명확하게 표현할 수 있다.

- 개발자는 이를 보고 '변경될 일이 없겠구나' 라고 이해할 수 있어서 의도치 않는 값 변경으로 인한 오류를 예방할 수 있다.

>> 코드의 안정성을 높임

 

 

 let - 블록스코프 

let이란?

- let은 변수의 값을 필요에 따라 유연하게 관리하고 변경할 수 있다.

- 특히 for문에서 블록 스코프 케이스가 많이 있다.

예시)
for (let i = 0; i < 3; i++) {
      console.log(i);
}

console.log(i);

let 이 var로 바뀌어도 오류가 나지 않는다.
그래서 더 주의해야한다.

 

const vs let 잘 고르는 TIP!

- const를 먼저 떠오르고 사용해본다.

그러나 그 const로 만든 값이 변경될 수 있다면 그때 let을 사용하는것이 좋다.

 

 

 var - 함수스코프 

let이란?

- let은 변수의 값을 필요에 따라 유연하게 관리하고 변경할 수 있다.

 

var를 지양해야하는 이유

1. 예상치 못한 범위에서 사용될 수 있기 때문에 오류가 생길 가능성이 높다.

2. 호이스팅과 함수 스코프 특성은 가독성을 떨어뜨리고 유지보수가 어려워진다.

>> const와 let 도 호이스팅이 가능하다.

호이스팅이란?
" hoisting / 끌어 올리기 "란 의미로, 선언 전 미리 할당한다.

🚨
var로 선언한 경우, 초기 값을 undefined로 미리 할당한다. >> 헷갈리기 때문에 var 사용 지양
const와 let로 선언한 경우, 변수를 초기화하지 않아 논리적인 흐름에서 벗어나지 않는다.

 


 

 객체와 배열 

객체란?

- 객체는 key와 value로 이루어진 값을 저장하는 데이터 구조 또는 타입이다.

- 자바스크립트에서는 모든 것이 객체로 다뤄진다고 해도 과언이 아닐 정도로 매우 중요하다.

JSON (JavaScript Object Notation)형태
- JavaScript의 Object(객체) 기반
- 서버에서 클라이언트로 데이터를 보낼 때 사용하는 양식으로,경량 데이터 교환 형식이다.

'Product design > 내일배움캠프' 카테고리의 다른 글

[📝TIL 12_2]솔루션 도출하기(250107)  (0) 2025.01.07
[📝WIL 11_5]11주 차 주간 회고(12/30-01/03)  (0) 2025.01.06
[📝WIL 10_5]10주 차 주간 회고(12/23-12/27)  (1) 2024.12.27
[📝TIL 10_4]카카오 페이 UX 리서치  (0) 2024.12.26
[📝TIL 10_2]JavaScript 함수와 미리 크리스마스🎄  (1) 2024.12.24
'Product design/내일배움캠프' 카테고리의 다른 글
  • [📝TIL 12_2]솔루션 도출하기(250107)
  • [📝WIL 11_5]11주 차 주간 회고(12/30-01/03)
  • [📝WIL 10_5]10주 차 주간 회고(12/23-12/27)
  • [📝TIL 10_4]카카오 페이 UX 리서치
DANI_l
DANI_l
  • DANI_l
    DANI BLOG
    DANI_l
  • 전체
    오늘
    어제
    • 분류 전체보기 (47)
      • Product design (47)
        • 내일배움캠프 (45)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 태그

    티스토리챌린지
    오블완
  • hELLO· Designed By정상우.v4.10.3
DANI_l
[📝TIL 11_1]React 입문하기
상단으로

티스토리툴바