'분류 전체보기' 카테고리의 글 목록 (2 Page)
본문 바로가기
728x90

분류 전체보기748

Axios의 timeout 옵션으로 요청 시간 제한 설정하기 단점 Axios를 사용하던 중 API 요청에 제한 시간을 둬야 하는 기능을 개발하게 되었고,그 과정 중 timeout 옵션을 알게 되어 짧게 정리해보았습니다. 역할API 요청이 timeout 옵션으로 설정한 시간 내에 완료되지 않을 경우 자동으로 요청을 취소하고 오류를 발생 시킵니다.기본값은 0으로, 옵션을 설정하지 않거나 0을 설정한 경우 무제한으로 요청을 대기할 수 있습니다. timeout을 설정하면 애플리케이션의 응답성을 높이고, 불필요한 대기를 방지할 수 있습니다.설정 방법import axios from 'axios';// 1분 (60초)으로 타임아웃 설정const axiosInstance = axios.create({ timeout: 60000});axiosInstance.get('/api/e.. 2024. 8. 28.
TanStack Query TanStack Query란?: TanStack Query는 현대 웹 애플리케이션에서 데이터 패칭, 캐싱, 동기화 및 상태 관리를 간편하게 처리할 수 있도록 돕는 라이브러리입니다. React, Vue, Svelte 등 다양한 프레임워크와 호환되며, 비동기 데이터와 서버 상태를 효율적으로 관리할 수 있는 강력한 도구입니다. 이 라이브러리는 API 호출, 데이터 캐싱, 폴링, 배경 업데이트와 같은 데이터 관련 작업을 간단하게 처리할 수 있도록 설계되었습니다. 개발자들은 복잡한 데이터 관리를 간소화하고, 애플리케이션의 성능을 향상시킬 수 있습니다. TanStack Query와 React Query의 차이점이름과 브랜드React Query : React 전용TanStack Query : 다양한 프레임워크와 라이.. 2024. 8. 12.
[프로그래머스] 전화번호 목록 문제 설명 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조대 : 119 박준영 : 97 674 223 지영석 : 11 9552 4421 전화번호부에 적힌 전화번호를 담은 배열 phone_book 이 solution 함수의 매개변수로 주어질 때, 어떤 번호가 다른 번호의 접두어인 경우가 있으면 false를 그렇지 않으면 true를 return 하도록 solution 함수를 작성해 주세요.제한사항phone_book의 길이는 1 이상 1,000,000 이하입니다. 각 전화번호의 길이는 1 이상 20 이하입니다. 같은 전화번호가 중복해서 들어있지 않습니다.입출력 예 입출력 예 .. 2024. 7. 17.
[프로그래머스] 프로세스 문제 설명 운영체제의 역할 중 하나는 컴퓨터 시스템의 자원을 효율적으로 관리하는 것입니다. 이 문제에서는 운영체제가 다음 규칙에 따라 프로세스를 관리할 경우 특정 프로세스가 몇 번째로 실행되는지 알아내면 됩니다. 1. 실행 대기 큐(Queue)에서 대기중인 프로세스 하나를 꺼냅니다. 2. 큐에 대기중인 프로세스 중 우선순위가 더 높은 프로세스가 있다면 방금 꺼낸 프로세스를 다시 큐에 넣습니다. 3. 만약 그런 프로세스가 없다면 방금 꺼낸 프로세스를 실행합니다.   3.1 한 번 실행한 프로세스는 다시 큐에 넣지 않고 그대로 종료됩니다. 예를 들어 프로세스 4개 [A, B, C, D]가 순서대로 실행 대기 큐에 들어있고, 우선순위가 [2, 1, 3, 2]라면 [C, D, A, B] 순으로 실행하게 됩니다... 2024. 7. 11.
[프로그래머스] 기능 개발 문제 설명 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100% 일 때 서비스에 반영할 수 있습니다.또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 수 있고, 이때 뒤에 있는 기능은 앞에 있는 기능이 배포될 때 함께 배포됩니다.먼저 배포되어야 하는 순서대로 작업의 진도가 적힌 정수 배열 progresses와 각 작업의 개발 속도가 적힌 정수 배열 speeds가 주어질 때 각 배포마다 몇 개의 기능이 배포되는지를 return 하도록 solution 함수를 완성하세요.제한사항작업의 개수(progresses, speeds배열의 길이)는 100개 이하입니다.작업 진도는 100 미만의 자연수입니다.작업 속도는 100 이하의 자연수입니다... 2024. 7. 10.
[LeetCode] Valid Parentheses 문제 설명 주어진 문자열 s가 '(', ')', '{', '}', '[', ']' 문자들만 포함하고 있을 때, 이 문자열이 유효한지 판별하는 문제입니다.  유효한 문자열의 조건은 다음과 같습니다:열린 괄호는 동일한 종류의 닫힌 괄호에 의해 닫혀야 합니다.괄호는 올바른 순서로 닫혀야 합니다.각 닫힌 괄호는 해당하는 종류의 열린 괄호가 있어야 합니다.예를 들어, 문자열 "()"은 유효하며, "{}[]" 역시 유효합니다. 하지만 "{[}]"는 유효하지 않습니다.이를 위해 스택(Stack) 자료구조를 사용하여 간단히 구현할 수 있습니다. 스택을 사용하면 괄호의 열림과 닫힘을 쉽게 추적하고 유효성을 검사할 수 있습니다.입출력 예입출력 예 #1입력 : s = "()"출력 : true 입출력 예 #2입력 : s = .. 2024. 7. 2.
Linkded List 구현하기 JavaScript 문법을 사용하여 Linked List를 구현해 보았습니다.   Node 클래스는 Linked List에서 각 노드를 나타내는 객체입니다. 각 노드는 데이터를 저장하는 부분인 data와 다음 노드를 가리키는 포인터인 next로 구성되어 있습니다.class Node { constructor(data) { this.data = data; this.next = null; };};LinkedList 클래스의 constructor(생성자)입니다. LinkedList는 비연속적인 데이터 구조이기 때문에 첫 번째 Node를 가르키는 head와 LinkedList의 길이를 담는 size로 구성되어 있습니다.초기에는 LinkedList가 비어있기 때문에 head = .. 2024. 6. 27.
[LeetCode] Design Browser History 문제 설명 한 개의 탭을 가진 브라우저를 가지고 있습니다. 이 브라우저는 시작 시 홈페이지에서 시작하여 다른 URL을 방문할 수 있으며, 뒤로 이동하거나 앞으로 이동할 수 있습니다. 이를 구현하는 BrowserHistory 클래스를 만들어 보겠습니다:BrowserHistory(string homepage): 브라우저 객체를 홈페이지로 초기화합니다.void visit(string url): 현재 페이지에서 해당 URL을 방문합니다. 이 과정에서 앞으로의 이력을 모두 지웁니다.string back(int steps): 최대 steps만큼 이전 기록으로 이동합니다. 실제 이동 가능한 만큼만 이동하며, 이동 후의 현재 URL을 반환합니다.string forward(int steps): 최대 steps만큼 앞으로.. 2024. 6. 25.
[LeetCode] Single Number 문제 설명 정수 배열 nums가 주어지면 모든 요소는 하나를 제외하고 두 번 나타납니다. 그 하나를 찾아보세요. 선형적인 런타임 복잡성을 갖는 솔루션을 구현해야 하며 일정한 추가 공간만 사용해야 합니다.제한사항입출력 예입출력 예 #1입력 : nums = [2, 2, 1]출력 : 1 입출력 예 #2입력 : nums = [4, 1, 2, 1, 2]출력 : 4 입출력 예 #3입력 : nums = [1]출력 : 1문제풀이/** * @param {number[]} nums * @return {number} */var singleNumber = function (nums) { let result = []; nums.forEach((num) => { if (!result.includes(num.. 2024. 6. 20.
728x90