본문 바로가기

Javascript

(4)
동기 & 비동기 동기: 직렬방식으로 작업 처리, 요청이 시작된 이후에는 무조건 응답을 받은 이후에 다른 작업 처리 (그동안 다른 모든 작업은 대기) 비동기: 병렬방식으로 작업 처리, 요청을 시작한 후 응답이 오건 말건 상관없이 다음 작업이 이루어짐, 한번에 여러 작업이 실행 자바스크립트는 싱글스레드에서 동기 방식으로 작동한다. 이러한 싱글 스레드 기반의 자바스크립트에서도 많은 양의 비동기 작업이 이루어 지고 있다. 출처 - 모던 리액트 딥다이브
자바스크립트 동등비교 new 객체(A) A = function(){} B = A // B는 A를 참조한다. B = function(){} // B는 더이상 A를 참조하지 않는다. B와 A는 같지 않다. * deep copy하면 B랑 A는 같아진다.
폴리필(Polyfill)과 트랜스파일(Transpile) 폴리필은 브라우저가 지원하지 않는 코드를 브라우저에서 사용할 수 있도록 변환하는 코드조각이나 플러그인을 말한다. 트랜스파일은 최신 버전의 코드를 예전 버전의 코드로 변환하는 과정을 말한다. 둘 다 최신 기능을 구버전의 실행 환경에서 동작할 수 있게 바꿔주는 역할을 한다. 유명한 폴리필 라이브러리로 core.js와 polyfill.io를 들 수 있으며 대표적인 트랜스파일러로는 바벨이 있다. 출처 - 우아한 타입스크립트 with 리액트
Promise 비동기 : 호출 -> 그 결과 기다리지 않음 동기 : 호출 -> 호출 끝나고 결과값을 받을때까지 기다린다. 비동기 : 언제 끝날지 확신이 없는 상태 Promise : 비동기 작업에 대한 관리를 해주는 promise 배열 Promise.all : 끝나는 시점을 완벽하게 맞추기 위함 all(각각의 프로미스를 기다림) 클릭 이벤트 -> 스크립트가 작동하는 순간 로딩