
\-> 함수를 변수에 담아서 활용하는 것\-> 함수선언식으로 만들어진 함수는 함수 실행전에 코드의 최상단으로 끌어올려지는 것을 의미한다. \-> 함수선언식은 호이스팅이 가능하지만 함수표현식은 불가능하다. \-> 함수표현식을 간략하게 쓴 것\-> 함수표현식을 간략하게 쓴
위의 코드는 적을게 넘 많으니깐 아래 방식으로도 적을 수 있다.
콜백함수\-> 함수의 매개변수에 함수를 넘기는 것
1. 객체 생성 -> 객체 생성자 이용 -> 객체 리터럴 방식(중괄호 사용) 2. 객체 안에 새로운 객체 추가 & 수정 & 삭제 3. this 4. 특정 프로퍼티가 객체 안에 존재하는지 알아보는 것
1. 배열 생성
1. 반복문 대체 2. 배열의 내장함수 1) forEach 2) map 3) includes 배열 안에 그 요소가 있는지 알려주는 내장함수이다. 4)indexOf 배열 안에 그 요소가 존재하면 몇번째 index에 존재하는 알려주는 내장함수 5)findInde
undefinednull0\-0NaNfalse''""위에 명시된 값들을 제외한 모든 값들은 true이다.'0' (0을 포함하는 문자열)'false' (false를 포함하는 문자열)\[] (빈 배열){} (빈 객체)function () {} (빈 함수)
\-> 중첩 삼항연산자를 사용하는것보다는 if문을 사용하는 것이 좋다.
단락회로 평가 왼쪽에서 오른쪽으로 연산하게 되는 논리연산자의 순서를 이용하는 문법
1. 배열의 비구조화 할당 배열의 기본변수 비 구조화 할당을 사용했을 경우 위의 코드를 더 단순하게 적어본다면? 만약 변수를 할당받지 못한다면?? 응용 - 스왑 비구조 할당을 사용하면? 2. 객체의 비구조화 할당 비구조할당을 이용하면 여기서 키값의 변수명
배열과 객체를 한줄로 펼치는 방법중복된 프로퍼티를 spread연산자를 이용하여 간추릴수 있다.배열의 원소를 순서대로 펼칠 수 있다.중간에 다른 요소를 유연하게 추가할 수 있다.
-> 블로킹 방식 : 하나의 작업을 할때 다른 작업을 할수 없는 것 -> 논 블로킹 방식 : 하나의 박업을 할 떄 다른 작업을 할 수 있는 것 1. 동기적 방식 2. 비동기 방식 예시 1 예시2 지역상수 res가 스코프 밖에서 사용하게 만드는 흐름 
리액트 상태 관리 라이브러리입니다. 리덕스를 사용하면 컴포넌트의 상태 업데이트 관련 로직을 다른 파일로 분리시켜서 더욱 효율적으로 관리할 수 있습니다.상태에 어떠한 변화가 필요하면 액션이란 것이 발생합니다. 하나의 객체로 표현되고 액션 객체는 type 필드를 반드시 가

리액트 프로넥트에서 리덕스를 사용할 때 가장 많이 사용하는 패턴은 프레젠테이셔널 컴포넌트와 컨테이너 컴포넌트를 분리하는 것이다.프레젠테이셔널 컴포넌트 : 주로 상태 관리가 이루어지지 않고, 그저 props를 받아와서 화면에 ui를 보여주기만 하는 컴포넌트컨테이너 컴포넌
액션 생섬 함수, 리듀서를 작성할때 redux-actions라이브러리를 사용하여 보다 편하게 사용할 수 있습니다.redux-actions를 사용하면 액션 생성 함수를 더 짧은 코드로 작성할 수 있습니다. createAction을 사용하면 매번 객체를 직접 만들어 줄 필
리덕스 스토어와 연동된 컨테이너 컴포넌트를 만들 때 connect 함수를 사용하는 대신 react-redux에서 제공하는 Hooks를 사용할 수 있습니다.useSelector Hook을 사용하면 connect 함수를 사용하지 않고도 리덕스의 상태를 조회할 수 있습니다.