Currying과 Composition 모두 함수형 프로그래밍의 핵심들이다. Currying - f(a, b, c)처럼 단일 호출로 처리하는 함수를 f(a)(b)(c)와 같이 각각의 인수가 호출 가능한 프로세스로 호출된 후 병합되도록 변환하는 것 - currying은 함수를 호출하지 않는다. 변환한다. - 함수의 재사용성을 높이기 위해 사용된다. const order = store => menu => console.log(`${store}에서 ${menu}를 주문`) // 호출 order('카페')('아메리카노'); order('카페')('라떼'); 위 함수를 ES5로 바꾸면 아래와 같다. function order(store) { return function (menu) { console.log(`${..
CORS Cross-Origin Resource Sharing : 교차 출처 자원 공유 1️⃣ 출처(Origin)란? 웹에서 출처(origin)란 scheme(protocol), hostname(domain), 액세스에 사용되는 URL의 port로 정의된다. - 스키마, 호스트 이름, 포트가 모두 일치하는 경우에만 동일한 출처를 가진다고 한다. - 일부 작업은 동일 출처 콘텐츠로 제한되며 이 제한은 CORS를 사용하여 해제할 수 있다 . 일반적인 URL 예시를 살펴보자. 예시 URL의 구성요소는 아래 그림과 같다. 위 URL의 구조에서 Protocol, Host, Port가 같다면 같은 출처라고 취급한다. 자바스크립트로 location객체의 origin 속성을 찍어보면 출처를 확인할 수 있다. conso..
정적 웹페이지 : 고정된 HTML, CSS, 자바스크립트, 이미지 등을 서버가 줘서 변하지 않는 웹페이지 ex) 단순한 정보소개 페이지 동적 웹페이지 : 게시판이나 통계페이지처럼 데이터베이스 등 계속 바뀌는 내용에 따라 사용자가 방문할 때마다 서버가 그때그때 HTML 내용들을 렌더링해서 보냄 ex) JSP, PHP MPA 더보기 - 여러개의 페이지로 구성되어 요청 때마다 정해진 페이지를 반환한다. - 주로 ssr 방식으로 html문서 렌더링 - 사용자가 페이지를 요청할 때마다 요청한 UI와 필요한 데이터를 서버가 HTML로 파싱해서 보여주는 방식 - 사용자가 아주 사소한 요청을 하더라도 매번 전체 페이지를 렌더링 해줘야함 - 완성된 형태의 HTML파일을 서버에서 전달받기때문에 검색엔진이 페이지를 크롤링하..
브라우저의 주요 기능은 사용자가 선택한 자원을 서버에 요청하고 브라우저에 표시하는 것이다. 자원은 보통 HTML문서이고, (PDF나 이미지 등 다른 형태일 수도 있음) 자원의 주소는 URI (Uniform Resource Identifier)에 의해 결정된다. 브라우저의 기본 구조 사용자 인터페이스 요청한 페이지를 보여주는 창을 제외한 나머지 모든 부분. (주소 표시줄, 이전/다음 버튼, 북마크 메뉴 등) 브라우저 엔진 사용자 인터페이스와 렌더링 엔진 사이의 동작 제어. 렌더링 엔진 요청한 콘텐츠를 브라우저 화면에 표시. (ex. HTML을 요청하면 HTML과 CSS를 파싱하여 화면에 표시) 통신 HTTP요청과 같은 네트워크 호출에 사용. 독립적인 인터페이스로 각 플랫폼 하부에서 실행. 자바스크립트 해석..