apps-script-utils 2.1.1 Help

nonNaN

function nonNaN<T>(value: T | number): value is T;

nonNaN(value) is the same test as !isNaN(value), written so that a guard clause reads as a sentence rather than as a negation.

Nothing is coerced first, which is where this differs from the global isNaN: that one converts its argument, so isNaN("abc") and isNaN(undefined) both report true.

isX and nonX answer a question and never interrupt control flow; requireX and requireNonX hand the value back or throw. The scheme is explained in Validation conventions.

Parameters

Parameter

Type

Description

value

T \| number

The value to check.

Returns

boolean — true when the value is not the NaN number; otherwise false.

In TypeScript the guard narrows value to T inside the branch.

Examples

What passes and what does not

nonNaN(0); // => true nonNaN("abc"); // => true nonNaN(undefined); // => true nonNaN(NaN); // => false nonNaN(0 / 0); // => false

See also

Source

src/lang/number/nonNaN.ts

23 September 2026

This documentation was generated with AI (Claude) from the library's source code.