Type Parameters
- T extends any[] | { [key: string]: any }
- CompactedArrayElementType extends any
- NonNullKeys extends
| string
| number
| (() => ArrayIterator<number>)
| {
"[iterator]"?: boolean;
"[unscopables]"?: boolean;
at?: boolean;
concat?: boolean;
copyWithin?: boolean;
entries?: boolean;
every?: boolean;
fill?: boolean;
filter?: boolean;
find?: boolean;
findIndex?: boolean;
flat?: boolean;
flatMap?: boolean;
forEach?: boolean;
includes?: boolean;
indexOf?: boolean;
join?: boolean;
keys?: boolean;
lastIndexOf?: boolean;
length?: boolean;
map?: boolean;
pop?: boolean;
push?: boolean;
reduce?: boolean;
reduceRight?: boolean;
reverse?: boolean;
shift?: boolean;
slice?: boolean;
some?: boolean;
sort?: boolean;
splice?: boolean;
toLocaleString?: boolean;
toString?: boolean;
unshift?: boolean;
values?: boolean;
[key: number]: boolean | undefined;
}
| (() => string)
| {
(...items: ConcatArray<number>[]): number[];
(...items: (number | ConcatArray<number>)[]): number[];
}
| ((searchElement: number, fromIndex?: number) => number)
| ((searchElement: number, fromIndex?: number) => number)
| ((start?: number, end?: number) => number[])
| ((searchElement: number, fromIndex?: number) => boolean)
| ((index: number) => number | undefined)
| {
(): string;
(
locales: string | string[],
options?: NumberFormatOptions & DateTimeFormatOptions,
): string;
}
| ((separator?: string) => string)
| {
<S extends number>(
predicate: (
value: number,
index: number,
array: number[],
) => value is S,
thisArg?: any,
): this is S[];
(
predicate: (value: number, index: number, array: number[]) => unknown,
thisArg?: any,
): boolean;
}
| (
(
predicate: (value: number, index: number, array: number[]) => unknown,
thisArg?: any,
) => boolean
)
| (
(
callbackfn: (value: number, index: number, array: number[]) => void,
thisArg?: any,
) => void
)
| (
<U>(
callbackfn: (value: number, index: number, array: number[]) => U,
thisArg?: any,
) => U[]
)
| {
<S extends number>(
predicate: (
value: number,
index: number,
array: number[],
) => value is S,
thisArg?: any,
): S[];
(
predicate: (value: number, index: number, array: number[]) => unknown,
thisArg?: any,
): number[];
}
| {
(
callbackfn: (
previousValue: number,
currentValue: number,
currentIndex: number,
array: number[],
) => number,
): number;
(
callbackfn: (
previousValue: number,
currentValue: number,
currentIndex: number,
array: number[],
) => number,
initialValue: number,
): number;
<U>(
callbackfn: (
previousValue: U,
currentValue: number,
currentIndex: number,
array: number[],
) => U,
initialValue: U,
): U;
}
| {
(
callbackfn: (
previousValue: number,
currentValue: number,
currentIndex: number,
array: number[],
) => number,
): number;
(
callbackfn: (
previousValue: number,
currentValue: number,
currentIndex: number,
array: number[],
) => number,
initialValue: number,
): number;
<U>(
callbackfn: (
previousValue: U,
currentValue: number,
currentIndex: number,
array: number[],
) => U,
initialValue: U,
): U;
}
| {
<S extends number>(
predicate: (value: number, index: number, obj: number[]) => value is S,
thisArg?: any,
): S | undefined;
(
predicate: (value: number, index: number, obj: number[]) => unknown,
thisArg?: any,
): number | undefined;
}
| (
(
predicate: (value: number, index: number, obj: number[]) => unknown,
thisArg?: any,
) => number
)
| (() => ArrayIterator<[number, number]>)
| (() => ArrayIterator<number>)
| (() => ArrayIterator<number>)
| (
<U, This = undefined>(
callback: (
this: This,
value: number,
index: number,
array: number[],
) => U | readonly U[],
thisArg?: This,
) => U[]
)
| (<A, D extends number = 1>(this: A, depth?: D) => FlatArray<A, D>[])
| (() => number | undefined)
| ((...items: number[]) => number)
| (() => number[])
| (() => number | undefined)
| ((compareFn?: (a: number, b: number) => number) => this)
| {
(start: number, deleteCount?: number): number[];
(start: number, deleteCount: number, ...items: number[]): number[];
}
| ((...items: number[]) => number)
| ((value: number, start?: number, end?: number) => this)
| ((target: number, start: number, end?: number) => this) - RetType extends
| Exclude<CompactedArrayElementType, null | undefined>[]
| {
[K in
| string
| number
| (() => ArrayIterator<number>)
| {
"[iterator]"?: boolean;
"[unscopables]"?: boolean;
at?: boolean;
concat?: boolean;
copyWithin?: boolean;
entries?: boolean;
every?: boolean;
fill?: boolean;
filter?: boolean;
find?: boolean;
findIndex?: boolean;
flat?: boolean;
flatMap?: boolean;
forEach?: boolean;
includes?: boolean;
indexOf?: boolean;
join?: boolean;
keys?: boolean;
lastIndexOf?: boolean;
length?: boolean;
map?: boolean;
pop?: boolean;
push?: boolean;
reduce?: boolean;
reduceRight?: boolean;
reverse?: boolean;
shift?: boolean;
slice?: boolean;
some?: boolean;
sort?: boolean;
splice?: boolean;
toLocaleString?: boolean;
toString?: boolean;
unshift?: boolean;
values?: boolean;
[key: number]: boolean | undefined;
}
| (() => string)
| {
(...items: ConcatArray<number>[]): number[];
(...items: (number | ConcatArray<number>)[]): number[];
}
| ((searchElement: number, fromIndex?: number) => number)
| ((searchElement: number, fromIndex?: number) => number)
| ((start?: number, end?: number) => number[])
| ((searchElement: number, fromIndex?: number) => boolean)
| ((index: number) => number | undefined)
| {
(): string;
(
locales: string | string[],
options?: NumberFormatOptions & DateTimeFormatOptions,
): string;
}
| ((separator?: string) => string)
| {
<S extends number>(
predicate: (
value: number,
index: number,
array: number[],
) => value is S,
thisArg?: any,
): this is S[];
(
predicate: (
value: number,
index: number,
array: number[],
) => unknown,
thisArg?: any,
): boolean;
}
| (
(
predicate: (
value: number,
index: number,
array: number[],
) => unknown,
thisArg?: any,
) => boolean
)
| (
(
callbackfn: (value: number, index: number, array: number[]) => void,
thisArg?: any,
) => void
)
| (
<U>(
callbackfn: (value: number, index: number, array: number[]) => U,
thisArg?: any,
) => U[]
)
| {
<S extends number>(
predicate: (
value: number,
index: number,
array: number[],
) => value is S,
thisArg?: any,
): S[];
(
predicate: (
value: number,
index: number,
array: number[],
) => unknown,
thisArg?: any,
): number[];
}
| {
(
callbackfn: (
previousValue: number,
currentValue: number,
currentIndex: number,
array: number[],
) => number,
): number;
(
callbackfn: (
previousValue: number,
currentValue: number,
currentIndex: number,
array: number[],
) => number,
initialValue: number,
): number;
<U>(
callbackfn: (
previousValue: U,
currentValue: number,
currentIndex: number,
array: number[],
) => U,
initialValue: U,
): U;
}
| {
(
callbackfn: (
previousValue: number,
currentValue: number,
currentIndex: number,
array: number[],
) => number,
): number;
(
callbackfn: (
previousValue: number,
currentValue: number,
currentIndex: number,
array: number[],
) => number,
initialValue: number,
): number;
<U>(
callbackfn: (
previousValue: U,
currentValue: number,
currentIndex: number,
array: number[],
) => U,
initialValue: U,
): U;
}
| {
<S extends number>(
predicate: (
value: number,
index: number,
obj: number[],
) => value is S,
thisArg?: any,
): S | undefined;
(
predicate: (value: number, index: number, obj: number[]) => unknown,
thisArg?: any,
): number | undefined;
}
| (
(
predicate: (value: number, index: number, obj: number[]) => unknown,
thisArg?: any,
) => number
)
| (() => ArrayIterator<[number, number]>)
| (() => ArrayIterator<number>)
| (() => ArrayIterator<number>)
| (
<U, This = undefined>(
callback: (
this: This,
value: number,
index: number,
array: number[],
) => U | readonly U[],
thisArg?: This,
) => U[]
)
| (<A, D extends number = 1>(this: A, depth?: D) => FlatArray<A, D>[])
| (() => number | undefined)
| ((...items: number[]) => number)
| (() => number[])
| (() => number | undefined)
| ((compareFn?: (a: number, b: number) => number) => this)
| {
(start: number, deleteCount?: number): number[];
(start: number, deleteCount: number, ...items: number[]): number[];
}
| ((...items: number[]) => number)
| ((value: number, start?: number, end?: number) => this)
| ((target: number, start: number, end?: number) => this)]: Exclude<
{ [key: string]: any }[K],
null | undefined,
>
}
A new array or object with all null and undefined values removed
Removes all null and undefined values from an array or object.
Examples: compact(['a', 2, null, undefined]) // ['a', 2] compact({ a: 1, b: 'b', c: null, d: undefined }) // { a: 1, b: 'b' }