카테고리 없음

패스트캠퍼스 환급챌린지 22일차 : 코드팩토리의 백엔드 아카데미 : 한 번에 끝내는 NestJS 패키지 - 기초부터 MSA까지 강의 후기

Laftel 2025. 3. 26. 16:13
반응형

***본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다
타입 밸리데이터

@IsBoolean()

  • 값이 true 또는 false인지 확인합니다.
  • 유효: true, false
  • 무효: "true", 1, null

@IsString()

  • 값이 문자열(string)인지 확인합니다.
  • 유효: "hello", ""
  • 무효: 123, true, {}

@IsNumber()

  • 값이 숫자(number)인지 확인합니다.
  • 유효: 10, 3.14
  • 무효: "10", "3.14"

@IsInt()

  • 값이 정수(integer)인지 확인합니다.
  • 유효: 1, 0, -5
  • 무효: 1.5, "10"

@IsArray()

  • 값이 배열(array)인지 확인합니다.
  • 유효: [], ["a", "b"]
  • 무효: "a,b", {}

@IsEnum(SomeEnum)

  • 값이 지정된 열거형(enum)에 포함되는지 확인합니다.
enum MovieGenre {
  Action = 'action',
  Fantasy = 'fantasy',
}

 

  • 유효: "action", "fantasy"
  • 무효: "comedy", 123

IsIn과 @IsEnum 장점과 차이. 

간단한 값 목록만 검사@IsIn()enum 없이 빠르게 작성 가능
타입 안정성과 재사용이 중요할 때@IsEnum()enum 기반, 유지보수와 타입 추적에 강함
여러 곳에서 같은 값 목록을 쓸 때@IsEnum()enum 재사용 가능
문자열 상수가 아닌 숫자값, 불리언 검사@IsIn()간단한 배열로 처리 가능
  • 간단하게 문자열 목록 중 하나인지 확인하고 싶다면 → @IsIn()
  • 코드의 유지보수성, 재사용성, 타입 안정성이 중요하다면 → @IsEnum()

@IsDateString()

  • 값이 ISO 8601 형식의 날짜 문자열인지 확인합니다.
  • 유효: "2023-12-01", "2024-01-01T10:00:00Z"
  • 무효: "2023/12/01", "01-01-2023"

숫자 벨리데이터

@IsDivisibleBy(number)

  • 지정된 숫자로 나누어 떨어지는지 확인합니다.
  • 유효: 10 (5로 나누어 떨어짐)
  • 무효: 11, 13

@IsPositive()

  • 값이 0보다 큰 양수인지 확인합니다.
  • 유효: 1, 100, 3.14
  • 무효: 0, -1

@IsNegative()

  • 값이 0보다 작은 음수인지 확인합니다.
  • 유효: -1, -0.5
  • 무효: 0, 1

@Min(x)

  • 값이 x 이상인지 확인합니다.
  • 예: @Min(1)
  • 유효: 1, 10
  • 무효: 0, -5

@Max(x)

  • 값이 x 이하인지 확인합니다.
  • 예: @Max(2)
  • 유효: 1, 2
  • 무효: 3, 100

 
#패스트캠퍼스 #직장인자기계발 #직장인공부 #환급챌린지 #패스트캠퍼스후기 #오공완
https://bit.ly/4hTSJNB

반응형