Vercel Project Settings > Functions를 들어가면 Function Region을 선택할 수 있다. 그런데 Vercel로 배포 시 Function Region 디폴트가 USA로 설정되어 있기 때문에 이것을 무조건 한국으로 바꿔주는 것이 좋다. Setting Serverless Function Regions 함수가 해당 데이터베이스에서 멀리 떨어진 지역에서 호출되는 경우 응답 시간이 느려집니다. 데이터베이스에 가까운 지역에 서버리스 기능을 배포하면 성능을 크게 향상시킬 수 있습니다. 서버리스 기능과 데이터 소스가 물리적으로 가까울 때 데이터 소스에서 데이터를 읽는 데 대기 시간이 줄어듭니다. Function Region이 미국인 경우 POST 요청에 2.70초가 소요되었다. Func..
홀짝에 따라 다른 값 반환하기 문제 설명 양의 정수 n이 매개변수로 주어질 때, n이 홀수라면 n 이하의 홀수인 모든 양의 정수의 합을 return 하고 n이 짝수라면 n 이하의 짝수인 모든 양의 정수의 제곱의 합을 return 하는 solution 함수를 작성해 주세요. 입출력 예 n result 7 16 10 220 입출력 예 #1 예제 1번의 n은 7로 홀수입니다. 7 이하의 모든 양의 홀수는 1, 3, 5, 7이고 이들의 합인 1 + 3 + 5 + 7 = 16을 return 합니다. 입출력 예 #2 예제 2번의 n은 10으로 짝수입니다. 10 이하의 모든 양의 짝수는 2, 4, 6, 8, 10이고 이들의 제곱의 합인 22 + 42 + 62 + 82 + 102 = 4 + 16 + 36 + 64 + ..
문자열 겹쳐쓰기 문제 설명 문자열 my_string, overwrite_string과 정수 s가 주어집니다. 문자열 my_string의 인덱스 s부터 overwrite_string의 길이만큼을 문자열 overwrite_string으로 바꾼 문자열을 return 하는 solution 함수를 작성해 주세요. 입출력 예 my_string overwrite_string s result "He11oWor1d" "lloWorl" 2 "HelloWorld" "Program29b8UYP" "merS123" 7 "ProgrammerS123" 나의 1차 풀이 function solution(my_string, overwrite_string, s) { let slice = my_string.slice(s, s + overw..
리스트 자르기 문제 설명 정수 n과 정수 3개가 담긴 리스트 slicer 그리고 정수 여러 개가 담긴 리스트 num_list가 주어집니다. slicer에 담긴 정수를 차례대로 a, b, c라고 할 때, n에 따라 다음과 같이 num_list를 슬라이싱 하려고 합니다. n = 1 : num_list의 0번 인덱스부터 b번 인덱스까지 n = 2 : num_list의 a번 인덱스부터 마지막 인덱스까지 n = 3 : num_list의 a번 인덱스부터 b번 인덱스까지 n = 4 : num_list의 a번 인덱스부터 b번 인덱스까지 c 간격으로 올바르게 슬라이싱한 리스트를 return 하도록 solution 함수를 완성해 주세요. 입출력 예 n slicer num_list result 3 [1, 5, 2] [1, ..
여러 페이지에서 공통적으로 사용하는 버튼이 있었는데 코드가 불필요하게 중복되는 느낌이라 컴포넌트 화해서 재사용하기 위해 GlobalButton 컴포넌트를 생성했다. const GlobalButton = ({ width, text, btnType }: StrProps) => { return ( {text} ); }; export default GlobalButton; GlobalButton 컴포넌트를 사용할 때 props로 3가지 요소를 받아야 했는데 버튼의 width와 type, 그리고 버튼 내부 텍스트였다. width를 props로 받아서 tailwind와 결합해야 했는데 이를 위해 className을 {}로 감싼 후 백틱(`)을 추가했다. 버튼 type의 경우 props로 받아 온 btnType을 t..
유튜브에서 우연히 HTML dialog 태그 관련 영상을 보고 이번 프로젝트에 너무 적용해 보고 싶었다! 많은 시행착오가 있었지만 결국 dialog 태그를 이용해서 모달을 구현하는 데 성공했다. 구현 과정에서 React에 dialog 태그를 적용하는 자료를 많이 찾을 수 없었기 때문에 코드를 기록으로 남기려 한다. HTML dialog 태그를 사용했을 때의 장점 backdrop을 포함한 기본적인 모달의 UI가 제공된다. (CSS 커스텀도 가능) dialog에서 제공되는 showModal(), close() 등의 API를 이용하여 모달을 쉽게 구현할 수 있다. esc 버튼을 클릭하여 모달을 닫을 수 있다. 기본적인 모달 UI 제공 (CSS 수정 방법) backdrop과 함께 정가운데 모달이 생성된다. 만약..
세로 읽기 문제 설명 문자열 my_string과 두 정수 m, c가 주어집니다. my_string을 한 줄에 m 글자씩 가로로 적었을 때 왼쪽부터 세로로 c번째 열에 적힌 글자들을 문자열로 return 하는 solution 함수를 작성해 주세요. 입출력 예 my_string m c result "ihrhbakrfpndopljhygc" 4 2 "happy" "programmers" 1 1 "programmers" 나의 풀이 function solution(my_string, m, c) { let answer = ''; for (let i = 0; i < my_string.length / m; i++) { answer += my_string[i * m + c - 1]; } return answer; } 처음..
Prisma schema The Prisma schema file is the main configuration file for your Prisma setup. It is typically called schema.prisma and consists of the following parts: Data sources: Specify the details of the data sources Prisma should connect to (e.g. a PostgreSQL database) Generators: Specifies what clients should be generated based on the data model (e.g. Prisma Client) Data model definition: Sp..
접미사인지 확인하기 문제 설명 어떤 문자열에 대해서 접미사는 특정 인덱스부터 시작하는 문자열을 의미합니다. 예를 들어, "banana"의 모든 접미사는 "banana", "anana", "nana", "ana", "na", "a"입니다. 문자열 my_string과 is_suffix가 주어질 때, is_suffix가 my_string의 접미사라면 1을, 아니면 0을 return 하는 solution 함수를 작성해 주세요. 입출력 예 my_string is_suffix result "banana" "ana" 1 "banana" "nan" 0 "banana" "wxyz" 0 "banana" "abanana" 0 나의 풀이 function solution(my_string, is_suffix) { return ..
기본 타입 지정 let project: { member: string[]; days: number; started: boolean } = { member: ['kim', 'park'], days: 30, started: true, }; Union type let age: string | number = 'kim'; let name: (string | number) = 100;. let array: (number | string)[] = [1,'2',3] let object: {data : (number | string) } = { data : '123' } let 학교: { score: (number | boolean)[]; teacher: string; friend: string | string[]; ..