소프트웨어의 구체적인 부분에 해당하는 설계와 구현을 재사용이 가능하게끔 일련의 협업화된 형태로 클래스들을 제공하는 것을 '프레임워크'라고 합니다.앱/서버 등의 구동, 메모리 관리, 이벤트 루프 등의 공통된 부분은 프레임워크가 관리하며, 사용자는 프레임워크가 정해준 방식
📚공식문서는 여기.문제 해결을 위해 공식문서를 봐도 이해가 안되는 부분은 구글링을 했는데,아직도 대부분 7,8 버전대에 사용하던 방법들 밖에 없길래.. 정리해놓기!생각보다 database 에서 문서를 읽어오는 api 를 많이 사용하게 된다.처음에 하루에 5만회? 많다
오늘은 map 과 foreach 의 차이에 대해 알아볼 것이다.먼저, 두 함수 모두 함수형 프로그래밍을 위한 메서드라고 한다. 함수형 프로그래밍은 프로그래밍 패러다임 중 하나로, 순수 함수와 보조 함수의 조합을 통해 로직 내에 존재하는 조건문과 반복문을 제거하여 복잡성
공식 문서에서는 아래와 같이 정의했다.대부분의 경우 this의 값은 함수를 호출한 방법에 의해 결정됩니다. 실행중에는 할당으로 설정할 수 없고 함수를 호출할 때 마다 다를 수 있습니다. ES5는 함수를 어떻게 호출했는지 상관하지 않고 this 값을 설정할 수 있는 bi
자바스크립트의 이벤트 루프는 자바스크립트에서 비동기 처리를 가능하게 하는 핵심 개념 중 하나이다.이벤트 루프를 알기 전, 앞서 알아놔야할 점!자바스크립트는, 단일 스레드 기반의 언어로 한 순간 하나의 작업만을 할 수 있다.※ 단일 스레드: 하나의 프로세스에서 하나의 스
web의 동작 원리 내가 웹 브라우저를 통해 특정 사이트에 접속하였을 때, 웹 페이지가 가져와지는 과정에 대해 알아보자. 웹의 동작 방식은 클라이언트가 서버에 요청을 보내면 서버는 요청에 대한 응답을 주는 과정이다. 즉, 클라이언트가 서버에게 request 요청을 보내
차이점을 알기 전에 var, let, const 가 무엇인지 먼저 알아본다.ES6 에 추가된 let, const 이전 사용되던 변수 선언 방식이다.var 는 전역 스코프를 가질 수 있고, 함수 내부에서 선언된 변수는 함수 스코프를 가진다.현재 사용하지 않는 이유는,
자바스크립트의 호이스팅에 대해 알아보려한다.JavaScript에서 호이스팅(hoisting)이란, 인터프리터가 변수와 함수의 메모리 공간을 선언 전에 미리 할당하는 것을 의미합니다. var로 선언한 변수의 경우 호이스팅 시 undefined로 변수를 초기화합니다. 반면
매번 매번 매번 봐도 남에게 설명해주기 어려운 그것 .. 클로저 클로저는 외부 변수를 기억하고 이 외부 변수에 접근할 수 있는 함수를 의미한다.스코프 체인으로 표현되기도 한다.들어가기 앞서, 스코프에 대해 간단히 설명.스코프란, 변수와 함수의 유효범위를 말한다.스코프
mdn docs 에서는 아래와 같이 정의했다.async function 선언은 AsyncFunction객체를 반환하는 하나의 비동기 함수를 정의합니다. 비동기 함수는 이벤트 루프를 통해 비동기적으로 작동하는 함수로, 암시적으로 Promise를 사용하여 결과를 반환합니다
데이터 타입이란 변수를 선언할 때, 숫자나 문자열 또는 이외의 것들을 변수에 저장하는 데이터 종류를 말한다.Javascript 언어의 타입은 원시값(기본 타입)과 객체(참조 타입)로 나뉜다.BooleanNullUndefinedNumberStringSymbolObject
프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고, 그 객체들간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법이다.코드 재사용이 용이하다.남이 만든 클래스를 가져와 사용할 수 있고 상속을 통해 확장이 가능하다.유지보수가 쉽다.객체지
애플리케이션 소프트웨어를 구축하고 통합하기 위한 정의 및 프로토콜 세트로, 때때로 API는 정보 제공자와 정보 사용자 간의 계약으로 지칭되며 소비자에게 필요한 콘텐츠(호출)와 생산자에게 필요한 콘텐츠(응답)를 구성합니다.REST API 에서 REST 는 Represen
브라우저 렌더링 과정 기본적인 렌더링 과정을 쉽게 설명하면 아래와 같다. 브라우저는 HTML, CSS, JavaScript 파일을 서버로부터 다운로드 한다. HTML 파일을 파싱(Parsing)하여 DOM(Document Object Model)트리를 생성한다. C
프로젝트를 해봤다면 자주 접하게되는 쿠키, 세션, 웹스토리지에 대해 알아볼 것이다. 그 전에, HTTP 프로토콜이란 것을 알아야 더 이해하기 쉽기에 간략히 알아보자. 🟡 HTTP 프로토콜이란? > HTTP는 인터넷 상에서 데이터를 주고 받기 위한 서버/클라이언
나는 상태관리 라이브러리로 Recoil 을 선택해 공부하고 사용해왔다.그런데 이번에 참여한 팀 프로젝트에서 Redux 를 사용한다고하여,이번 기회에 공부하게되었다.아무래도 Recoil 보다 Redux 가 많이 사용되고 있기에 공부해야지라고 생각하고 있었는데,이번 기회에
리덕스 연습을 위해 간단한 투두리스트를 만들어볼거다.그전에 store, reducer 등 기초 세팅을 해보자!내가 알기론 createStore를 사용하는 걸로 알고 있었는데, 공식문서에서 보니 Toolkit 을 사용하라고 나와있었다.아예 사용할 수 없는것이 아니다. 사
스토어, 리듀서, 액션까지 준비가 끝났으니 이제 투두리스트를 추가하고 삭제하는 기능을 만들어 볼거다.useSelector 는 Redux-store 에 저장된 state 값을 반환한다.우선 내 store 는 빈 배열로, 투두리스트를 작성하면 text 와 id 가 추가되는
간단한 todolist가 완성되었다.허나 redux는 웹 브라우저 창을 닫거나 새로고침 시 state 가 리셋되기 때문에, 웹 스토리지에 저장하는 방법을 찾았다.➕ 표시가 있는 것이 추가된 코드이다.combineReducer 여러개의 reducer를 하나의 root r
{MenuInfo.map((menu, index) => ( {menu.summary} {menu.detail.map((detail, idx) => ( // aria-labelledby 를 사용
만약, axios 를 통해 API 와 통신할 때 token 이라던지,유저가 가진 권한 같은 특정 데이터가 들어가야한다고 해보자.기존의 방식이라면 get 또는 post 시 매번 동일한 데이터를 넣어줘야한다.하지만 axios interceptors를 사용하면, 매번 작성하