반응형
반응형
프론트 페이지에서 새로고침이 되어도 값이 변경되지 않아야 하는 전역 정보를 다룰 때에는 어떻게 하면 좋을까?예를 들어, 로그인의 경우 accessToken의 수명이 다할 때까지 어딘가에 반드시 저장이 되어 있어야 한다. 이를 위해, Zustand의 persist를 사용해 보았다. Zustand 의 Persist란?persist 미들웨어는 Zustand를 사용하여 스토어의 상태를 로컬 스토리지(localStorage) 또는 다른 저장소에 유지(persist)하기 위해 사용된다. 이 미들웨어는 Zustand 상태를 지정된 저장소에 저장하고, 애플리케이션 초기화 시 저장된 상태를 복원한다. persist의 사용 방식 persist는 두 가지 주요 매개변수를 받는다:config: Zustand 상태와 상..
개발을 하다 보면, 필연적으로 '값이 없는 상태' 를 관리해야 하는 경우가 생긴다. 이 때, undefined를 쓰는 게 좋을까, null을 쓰는 게 좋을까? 먼저, undefined와 null에 대해 알아보자. undefined와 null의 차이undefined변수가 선언되었지만 초기화되지 않은 상태.값이 아예 없음을 나타냄.타입스크립트에서 Optional 속성(?)의 기본 상태.null의도적으로 "값이 없음"을 명시.값이 존재하지 않음을 프로그래머가 명시적으로 설정한 상태. 아하, 그러니까 undefined는 '변수가 선언되기만 한 상태' 이고, null은 '값이 없다는 것을 넣어준 상태' 이다. 즉 undefined는 '데이터의 상태를 초기화하지 않은 상태(어떠한 값도 넣지 않은 채)로 남겨두..
외주 프로젝트 중 여러 알림을 쌓으면서 관리해야 하는 Alert, 한 번에 하나만 띄워져야 하는 Modal을 useModal이라는 하나의 훅을 이용해 관리하기 위해 작성해 보았다. 코드의 흐름 설명 모달 상태 관리(useModalStore)useModalStore는 Zustand를 사용해 모달의 상태를 관리하며, stack 옵션에 따라 모달의 관리 방식을 조정합니다.modals: 현재 열려 있는 모달의 배열입니다.open: 특정 컴포넌트를 모달로 열고, 관련 데이터를 상태에 추가합니다.stack: true: modals 배열에 새로운 모달을 추가합니다.stack: false: 기존 모달이 없을 때만 추가. 기존 모달이 있다면 **"모달을 추가할 수 없습니다"**라는 메시지를 console에 출력합니다.c..
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(bf.readLine(), "\n"); int N = Integer.parseInt(st.nextToken()); List list = new ArrayList(); // 소인수분해 for (int i=2; in==2).count(); long b = list.stream().filter(n->n==3).count(); long c = list.stream().filter(n->n==5).count(); long d = list.stream().filter(n->n==7).coun..
배열의 평균값 구하기 1. Array를 Stream화 한다.2. sum으로 더한다.3. average() 메서드로 평균을 구한다.4. orElse(0) 으로 주어진 값이 null이 아닌 경우 주어진 값을 되돌려주고, null인 경우 0을 돌려준다.import java.util.*;public double(int []arr){ // Array를 steam화 하려면 Arrays.steam을 사용한다. return Arrays.stream(arr).sum().average().orElse(0); }
1. 최대공약수// 숫자가 2개일 경우public int getGcd(int a, int b){ if(b == 0) { return a; } return getGcd(b, a%b);}// 숫자가 여러개일 경우 public static int gcdOfMultipleNumbers(int[] numbers) { int result = numbers[0]; for (int i = 1; i 2. 최소공배수최소공배수는 최소공배수를 구할 두 수를 곱한 값을 최대공약수로 나눈 값과 같다.public class Main { // 두 숫자의 최대공약수를 구하는 함수 public static int gcd(int a, int b) { if (b ..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.