Skip to content

Utils - Predicate

@teamsparta/utils에서 제공하는 타입 가드 및 판별 함수 모음입니다. 모든 함수는 TypeScript type narrowing을 지원합니다.


isNil

값이 null 또는 undefined인지 확인합니다.

API

typescript
function isNil<T>(value: T | null | undefined): value is null | undefined;

사용 예시

typescript
isNil(null);      // true
isNil(undefined); // true
isNil(0);         // false
isNil('');        // false

isNotNil

값이 nullundefined도 아닌지 확인합니다. isNil의 반대입니다.

API

typescript
function isNotNil<T>(value: T | null | undefined): value is T;

사용 예시

typescript
const items = [1, null, 2, undefined, 3];
const filtered = items.filter(isNotNil); // [1, 2, 3] (타입: number[])

isNull

값이 정확히 null인지 확인합니다.

API

typescript
function isNull(value: unknown): value is null;

isUndefined

값이 정확히 undefined인지 확인합니다.

API

typescript
function isUndefined(value: unknown): value is undefined;

isBoolean

값이 boolean인지 확인합니다.

API

typescript
function isBoolean(value: unknown): value is boolean;

isNumber

값이 number인지 확인합니다.

API

typescript
function isNumber(value: unknown): value is number;

isString

값이 string인지 확인합니다.

API

typescript
function isString(value: unknown): value is string;

isObject

값이 object인지 확인합니다. null과 배열은 제외합니다.

API

typescript
function isObject(value: unknown): value is object;

사용 예시

typescript
isObject({});        // true
isObject({ a: 1 });  // true
isObject(null);      // false
isObject([]);        // false

isArray

값이 배열인지 확인합니다.

API

typescript
function isArray(value: unknown): value is any[];

isFunction

값이 함수인지 확인합니다.

API

typescript
function isFunction(value: unknown): value is (...args: unknown[]) => unknown;

isDate

값이 Date 객체인지 확인합니다.

API

typescript
function isDate(value: unknown): value is Date;

isClient

현재 환경이 클라이언트(브라우저)인지 확인합니다.

API

typescript
function isClient(): boolean;

사용 예시

typescript
if (isClient()) {
  // 브라우저 전용 로직
  document.title = 'Hello';
}

isServer

현재 환경이 서버인지 확인합니다. isClient()의 반대입니다.

API

typescript
function isServer(): boolean;