nonNumber
function nonNumber<T>(value: T | number): value is T;
nonNumber(value) is the same test as !isNumber(value), written so that a guard clause reads as a sentence rather than as a negation.
The test is typeof value === "number", which NaN and both infinities satisfy. Use isFloat, isInteger or isNaN when those cases have to be told apart.
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 |
|---|---|---|
|
| The value to check. |
Returns
boolean — true when the value is not a number; otherwise false.
In TypeScript the guard narrows value to T inside the branch.
Examples
What passes and what does not
nonNumber("1"); // => true
nonNumber(null); // => true
nonNumber(0); // => false
nonNumber(1.5); // => false
nonNumber(NaN); // => false
nonNumber(Infinity); // => false
See also
Source
23 September 2026
This documentation was generated with AI (Claude) from the library's source code.