
[JS] 날짜 라이브러리 비교 FE 개발을 할 때 빠질 수 없는 라이브러리가 바로 날짜 라이브러리입니다. 그렇기에 날짜 라이브러리의 대표 3 대장에 대해 알아보겠습니다. 표 Date-fns 🔗 링크 Size : 中 러닝커브 : 높음 실행시간 : 빠름 (398.107 ms) 러닝커브가 높으며, 모듈화 된 접근 방식을 취합니다. 모듈화 된 접근 방식으로 사용하다 보니 최종적으로 번들의 크기가 줄어듭니다. Date-fns의 함수는 특정 작업을 수행하기 위해 최적화되어 있습니다. 함수 하나가 하나의 작업만 수행하기 때문에, 불필요한 처리가 줄어들고 성능이 향상되지만, 함수 하나씩 계속 작업해야 되기에 불편할 수 도 있습니다. 국제화를 지원하지만, Day.js와 Moment.js에 비해 제한적입니다. Moment..

Ajax란? (Asynchronous Javascript and XML) 자바스크립트를 사용하여 브라우저가 서버에게 비동기 방식으로 데이터를 요청하고, 서버가 응답한 데이터를 수신하여 웹페이지를 동적으로 갱신하는 프로그래밍을 말한다. Ajax는 브라우저에게 제공하는 Web API인 XMLHttpRequest 객체를 기반으로 동작한다. XMLHttpRequest는 HTTP 비동기 통신을 위한 메서드와 프로퍼티를 제공한다. Ajax 등장 전의 웹페이지 😢 이전 웹페이지와 차이가 없어서 변경할 필요가 없는 부분까지 포함된 완전한 HTML을 서버로부터 매번 다시 전송받기 때문에 불필요한 데이터 통신이 발생한다. 😢 변경할 필요가 없는 부분까지 처음부터 다시 렌더링한다. 이로 인해 화면 전환이 일어나면 화면이 순..

동기와 비동기 동기 (Synchronous) 특정 코드의 실행이 완료될 때까지 기다리고 난 후 다음 코드를 수행하는 것 주문 즉시 커피를 만들어 주는 카페가 있다고 가정해 봅시다. 동기적으로 운영되는 카페의 경우 음료를 주문받은 후 주문 받은 음료를 만들어 손님에게 전달한 후 다음 손님의 주문을 받고 음료를 제작하게 됩니다. 이러한 방법은 여러 손님의 주문을 소화하기가 어려우며 비효율적입니다. 비동기 (Asynchronous) 특정 코드의 실행이 완료될 때까지 기다리지 않고 다음 코드들을 수행하는 것 앞선 예시로 든 카페가 비동기적으로 운영되는 경우 여러 손님의 주문을 받으면서 음료를 제작하게 되고 완성되는 대로 손님에게 음료를 제공하게 됩니다. 이러한 방법은 동기적으로 운영하는 경우보다 훨씬 효율적입니..

호출 스케줄링 (scheduling a call) 함수를 명시적으로 호출하면 즉시 실행된다. 만약 함수를 명시적으로 호출하지 않고 일정 시간이 경과된 이후에 호출되도록 함수 호출을 예약하려면 타이머 함수를 사용한다. 이를 호출 스케줄링이라 한다. 타이머 함수는 ECMAScript 사양에 정의된 빌트인 함수가 아니다. 하지만 브라우저 환경과 Node.js 환경에서 모두 전역 객체의 메서드로서 타이머 함수를 제공한다. 즉, 타이머 함수는 호스트 객체이다. 타이머 함수 setTimeout & clearTimeout setInterval & clearInterval setTimeout & clearTimeout const timerId = setTimeout(callbackFunc [, delay, parame..