본문 바로가기

전체 글198

n 번의 비동기 요청 시 Promise 재귀함수 처리 n번의 비동기 요청 시 Promise 재귀함수 처리 상황 공공 API 데이터를 활용 중 최대 1000 개의 데이터만 불러올 수 있는 제한사항으로 인해 전체 데이터를 불러와 데이터를 추출하는 과정에 문제가 생겼다. 다행히 API 요청 결과 데이터 중 전체 데이터의 전체 개수를 나타내는 데이터가 존재해 이를 활용하여 n 번의 요청으로 (n x 1000) 개의 데이터를 가져오도록 설계하기로 했다. 설계 비동기 처리의 실행 순서를 보장하기 위해 async await 키워드를 사용 원하는 만큼의 API 요청하기 위해 재귀함수로 형태를 활용 코드 코드 설명 axios 패키지를 활용해 API 데이터를 처리할 함수를 선언 함수안에 재귀 함수로 활용할 함수 recursiveReq를 async 키워드와 함께 선언 axio.. 2023. 11. 16.
React + Vite + ts 환경에서 path alias 설정하기 Vite 환경에서 path alias 설정하기 상황 Reaect + Vite + ts 환경에서 tsconfig 에 path alis 설정 후 정상적으로 인식하지 못해 Failed to resolve import "@styles/globalStyle" from "src\App.tsx". Does the file exist? 이런 오류메시지가 발생함 "compilerOptions": { "baseUrl": "./src", "paths": { "@components/*": ["./components/*"], "@api/*": ["./api/*"], "@hooks/*": ["./hooks/*"], "@assets/*": ["./assets/*"] } ... } 해결 방법 1. vite.config.ts 에서 a.. 2023. 11. 8.
React + ts 정적 파일 저장 위치와 기준 React + ts 정적파일 저장위치와 기준 설명 react + ts 로 개발 중 공공 API 에 사용되는 도시 코드를 정적 파일로 저장해야 하는 상황에서 두 가지 고민이 생겼다. 어디에 저장할 것인가? (public 디렉토리, src 디렉토리 ) 확장자(ts,js,json ...)는 어떤 것으로 할 것인가? 1. public 폴더와 소스코드 폴더에서의 정적 파일 처리의 차이점 react 로 개발하면서 정적파일을 저장하는 곳을 크게 public 폴더와 기타 src 같은 소스코드 폴더 (혹은 소스 코드 내?) 두 가지로 나누어 생각 할 수 있고 이 두 방식은 분명한 차이가 존재한다. 1.1 public 폴더 저장한 파일은 빌드 후에도 애플리케이션의 루트 디렉토리에 그대로 유지된다 이 폴더에 저장된 파일은 .. 2023. 11. 6.
[JS] 코딩 테스트 문제 : 아나그램 [해쉬 맵] 문제 : 아나그램 [해쉬] 문제 설명 Anagram이란 두 문자열이 알파벳의 나열 순서를 다르지만 그 구성이 일치하면 두 단어는 아나그램이라고 합니다. 예를 들면 'AbaAeCe' 와 'baeeACA' 는 알파벳을 나열 순서는 다르지만 그 구성을 살펴보면 A(2), a(1), b(1), C(1), e(2) 로 알파벳과 그 개수가 모두 일치합니다. 즉 어느 한 단어를 재배열하면 상대편 단어가 될 수 있는 것을 아나그램이라 합니다. 길이가 같은 두 개의 단어가 주어지면 두 단어가 아나그램인지 판별하는 프로그램을 작성하세요. 아나그램 판별시 대소문자가 구분됩니다. ▣ 입력설명 첫 줄에 첫 번째 단어가 입력되고, 두 번째 줄에 두 번째 단어가 입력됩니다. 단어의 길이는 100을 넘지.. 2023. 11. 1.
[JS] 코딩 테스트 문제 : 학급 회장 [해쉬 맵] 문제 : 학급 회장 [해쉬 맵] 문제 설명 학급 회장을 뽑는데 후보로 기호 A, B, C, D, E 후보가 등록을 했습니다. 투표용지에는 반 학생들이 자기가 선택한 후보의 기호(알파벳)가 쓰여져 있으며 선생님은 그 기호를 발표하고 있습니다. 선생님의 발표가 끝난 후 어떤 기호의 후보가 학급 회장이 되었는지 출력하는 프로그램을 작성하세요. 반드시 한 명의 학급회장이 선출되도록 투표결과가 나왔다고 가정합니다. ▣ 입력설명 첫 줄에는 반 학생수 N(5 max) { max = value; answer = key; } }); // 맵 결과 console.log(candidateMap); return answer; } let str = "BACBACCACCBDEDE"; 풀이 후보들을 Map 으로 {Key:이름 , .. 2023. 11. 1.
[JS] 코딩 테스트 문제 : 최대 매출 문제 : 최대 매출 문제 설명 현수의 아빠는 제과점을 운영합니다. 현수 아빠는 현수에게 N일 동안의 매출기록을 주고 연속된 K일 동안의 최대 매출액이 얼마인지 구하라고 했습니다. 만약 N=10이고 10일 간의 매출기록이 아래와 같습니다. 이때 K=3이면 12 15 11 20 25 10 20 19 13 15 연속된 3일간의 최대 매출액은 11+20+25=56만원입니다. ▣ 입력설명 첫 줄에 N(5 2023. 10. 31.
[JS] 코딩 테스트 문제 : 연속 부분 수열 2 문제 : 연속부분수열 2 문제 설명 N개의 수로 이루어진 수열이 주어집니다. 이 수열에서 연속 부분 수열의 합이 특정 숫자 M이하가 되는 경우가 몇 번 있는지 구하는 프로그램을 작성하세요. 만약 N=5, M=5이고 수열이 다음과 같다면 1 3 1 2 3 합이 5이하가 되는 연속 부분 수열은 {1}, {3}, {1}, {2}, {3}, {1, 3}, {3, 1}, {1, 2}, {2, 3}, {1, 3, 1}로 총 10가지입니다. ▣ 입력설명 첫째 줄에 N(1≤N≤100,000), M(1≤M≤100,000,000)이 주어진다. 수열의 원소값은 1,000을 넘지 않는 자연수이다. ▣ 출력설명 첫째 줄에 경우의 수를 출력한다. ▣ 입력예제 1 5 5 1 3 1 2 3 ▣ 출력예제 1 10 내코드 functio.. 2023. 10. 30.
[JS] 코딩 테스트 문제 : 연속부분수열1 문제 : 연속부분수열1 문제 설명 N개의 수로 이루어진 수열이 주어집니다. 이 수열에서 연속부분수열의 합이 특정숫자 M이 되는 경우가 몇 번 있는지 구하는 프로그램을 작성하세요. 만약 N=8, M=6이고 수열이 다음과 같다면 1 2 1 3 1 1 1 2 합이 6이 되는 연속부분수열은 {2, 1, 3}, {1, 3, 1, 1}, {3, 1, 1, 1}로 총 3가지입니다. ▣ 입력설명 첫째 줄에 N(1≤N≤100,000), M(1≤M≤100,000,000)이 주어진다. 수열의 원소값은 1,000을 넘지 않는 자연수이다. ▣ 출력설명 첫째 줄에 경우의 수를 출력한다. ▣ 입력예제 1 8 6 1 2 1 3 1 1 1 2 ▣ 출력예제 1 3 내코드 function solution(m, arr) { let answ.. 2023. 10. 25.
[JS] 코딩 테스트 문제 : 공통원소구하기 문제 : 공통원소구하기 문제 설명 A, B 두 개의 집합이 주어지면 두 집합의 공통 원소를 추출하여 오름차순으로 출력하는 프로그램을 작성하세요. ▣ 입력설명 첫 번째 줄에 집합 A의 크기 N(1 2023. 10. 25.
[JS] 코딩 테스트 문제 : 두 배열 합치기 문제 : 두 배열 합치기 문제 설명 오름차순으로 정렬이 된 두 배열이 주어지면 두 배열을 오름차순으로 합쳐 출력하는 프로그램 을 작성하세요. ▣ 입력설명 첫 번째 줄에 첫 번째 배열의 크기 N(1 2023. 10. 21.
[JS] 코딩 테스트 문제 : K번째 큰 수 문제 : K번째 큰 수 문제 설명 현수는 1부터 100사이의 자연수가 적힌 N장의 카드를 가지고 있습니다. 같은 숫자의 카드가 여러장 있을 수 있습니다. 현수는 이 중 3장을 뽑아 각 카드에 적힌 수를 합한 값을 기록하려고 합니다. 3장을 뽑을 수 있는 모든 경우를 기록합니다. 기록한 값 중 K번째로 큰 수를 출력하는 프로그램을 작성하세요. 만약 큰 수부터 만들어진 수가 25 25 23 23 22 20 19......이고 K값이 3이라면 K번째 큰 값은 22입니다. ▣ 입력설명 첫 줄에 자연수 N(3 2023. 10. 18.
[JS] 코딩 테스트 문제 : 졸업 선물 문제 : 졸업 선물 문제 설명 선생님은 올해 졸업하는 반 학생들에게 졸업선물을 주려고 합니다. 학생들에게 인터넷 쇼핑몰에서 각자 원하는 상품을 골라 그 상품의 가격과 배송비를 제출하라 고 했습니다. 선생님이 가지고 있는 예산은 한정되어 있습니다. 현재 예산으로 최대 몇 명의 학생에게 선물을 사줄 수 있는지 구하는 프로그램을 작성하세요. 선생님은 상품 하나를 50% 할인해서(반 가격) 살 수 있는 쿠폰을 가지고 있습니다. 배송비는 할인에 포함되지 않습니다. ※ 문제와 답안지를 제공한 제작자가 중요치 않은 일부 파라미터 생략하는 등 일부 다를 수 있습니다. (크게 문제되는 부분은 없음) ▣ 입력설명 첫 번째 줄에 반 학생수 N(1 (a[0] + a[1]) - (b[0] + b[1])); 보완 내용 명시적으로.. 2023. 10. 18.