728x90
반응형
동기 함수와 비동기 함수
Javascript/Concept2025. 4. 28. 14:00동기 함수와 비동기 함수

1. 동기 함수비동기 함수에 대하여 제대로 알아보기 전에, 먼저 동기 함수에 대하여 먼저 알아보도록 하겠다. 동기 함수란?동기 함수란 현재 실행 중인 태스크가 종료될 때까지 다음에 실행되는 태스크가 대기한다.(블로킹)즉시 결과를 반환하고, 실행 흐름을 예측 가능하고 직관적으로 만든다.동기 함수의 장점: 태스크를 순서대로 하나씩 처리하므로 실행 순서가 보장된다.동기 함수의 단점: 앞선 태스크가 종료될 때까지 이후 태스크들이 블로킹되는 단점이 있다. 함수를 호출시 함수 코드가 평가되어 함수 실행 컨텍스트가 생성된다.이때 생성된 함수 실행 컨텍스트는 실행 컨텍스트 스택(콜 스텍)에 푸쉬되고 함수 코드가 실행된다.함수가 호출된 순서대로 순차적으로 함수 실행 컨텍스트가 실행 컨텍스트 스택에 푸쉬된다.함수 코드의 ..

Javascript/Coding Test2025. 2. 14. 06:43배열 비교하기

- 문제이 문제에서 두 정수 배열의 대소관계를 다음과 같이 정의합니다.두 배열의 길이가 다르다면, 배열의 길이가 긴 쪽이 더 큽니다.배열의 길이가 같다면 각 배열에 있는 모든 원소의 합을 비교하여 다르다면 더 큰 쪽이 크고, 같다면 같습니다.두 정수 배열 arr1과 arr2가 주어질 때,위에서 정의한 배열의 대소관계에 대하여 arr2가 크다면 -1, arr1이 크다면 1, 두 배열이 같다면 0을return 하는 solution 함수를 작성해 주세요. - 입출력 예 arr1 arr2 result [49, 13] [70, 11, 2] -1 [100, 17, 84, 1] [55, 12, 65, 36] 1 [1, 2, 3, 4, 5] [3, 3, 3, 3, 3] 0 - 해결 방법 이 문제는 비교적 쉬웠..

Javascript/Coding Test2025. 2. 14. 04:56배열의 길이에 따라 다른 연산하기

- 문제 정수 배열 arr과 정수 n이 매개변수로 주어집니다. arr의 길이가 홀수라면 arr의 모든 짝수 인덱스 위치에 n을 더한 배열을,arr의 길이가 짝수라면 arr의 모든 홀수 인덱스 위치에 n을 더한 배열을return 하는 solution 함수를 작성해 주세요.  - 입출력 예arrnresult [49, 12, 100, 276, 33] 27 [76, 12, 127, 276, 60] [444, 555, 666, 777] 100 [444, 655, 666, 877]  - 해결 방법 처음에는 조건에 맞게 if문과 for문을 나열했는데,그럴 경우 코드가 길어질 뿐더러 중복되는 코드가 많아진다는 문제점이 생겼다.게다가 처음에는 새로운 빈 배열을 만들어 값을 담아주는 형태로 갔기 때문에 더 코드가 길어졌..

Index.js 파일
Backend/Node.js2024. 12. 15. 00:26Index.js 파일

- Index.js 파일Node.js를 만든 개발자는 index.js 파일을 만든 것을 후회한다고 하였다.이 index.js 파일이 module의 로딩 시스템을 굉장히 복잡하게 만든다는 얘기다.지금까지 했던 프로젝트의 리팩토링을 통하여 어떻게 module 시스템을 복잡하게 만드는지 살펴보겠다.  lib 폴더를 하나 생성하고, 내부에 index.js 파일과 request.js, response.js 파일을 넣어준다.만약, 기능별로 나눠둔 module 파일이 많아진다면 그때 index.js 파일을 사용할 수 있다. 폴더 안에 각 module을 담은 파일이 너무 많을 경우, index.js에서 처리한다.방법은 여러 가지가 있다.1.// index.jsmodule.exports = {  request : req..

CommonJS와 ECMAScript module의 차이
Backend/Node.js2024. 12. 14. 23:34CommonJS와 ECMAScript module의 차이

- CommonJS Module지금까지 사용한 module은 CommonJS 였다.바로, module.exports로 내보내고 require로 가져오는 것 말이다.CommonJS는 node.js에서 기본 module로 사용되고 있다. - ECMAScript Moduleexport, import를 사용해서 module을 내보내고 가져오는 Syntax을 사용한다.ECMAScript module을 사용하려면 파일 확장자를 mjs로 변경해야 한다.ECMAScript Module은 javascript의 표준이고 CommonJS Module은 Node.js의 기본값이다. 모든 주요 브러우저는 ES Module을 지원하며,React 및 Vue.js와 같은 프레임워크에서도 ES module의 가져오기(import), ..

module 생성하기
Backend/Node.js2024. 12. 14. 21:59module 생성하기

- HTTPS module 생성하기이번에는 Node.js의 HTTP module을 가져다 사용하는 것이 아닌,HTTPS module을 직접 만들어서 사용해보겠다. HTTPS module의 역할은,client에서 데이터를 암호화해서 특정 경로에 요청을 보내고,server에서 암호화되어서 온 결과 데이터를 복호화하여 client로 다시 보내주는 것이다.  파일은 https.js, request.js, response.js 파일을 사용할 것이다.request.js와 response.js에서 만든 module을 https.js 파일로 가져와서 사용할 것이다.request.js는 요청에 필요한 함수 등을 포함하고(암호화),response.js는 데이터의 결과를 가져오는데 필요한 함수들을 포함한다.(복호화) // ..

728x90
반응형
image