or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

docs

index.md
tile.json

tessl/npm-lodash--isnumber

The lodash method _.isNumber exported as a module for checking if a value is a number

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
npmpkg:npm/lodash.isnumber@2.4.x

To install, run

npx @tessl/cli install tessl/npm-lodash--isnumber@2.4.0

index.mddocs/

lodash.isnumber

The lodash method _.isNumber exported as a standalone module. Checks if a value is classified as a Number primitive or object, returning true for numeric values including Number objects, and false for all other types.

Package Information

  • Package Name: lodash.isnumber
  • Package Type: npm
  • Language: JavaScript
  • Installation: npm install lodash.isnumber

Core Imports

const isNumber = require('lodash.isnumber');

ES6/ESM:

import isNumber from 'lodash.isnumber';

Basic Usage

const isNumber = require('lodash.isnumber');

// Primitive numbers
isNumber(42);        // => true
isNumber(3.14);      // => true
isNumber(NaN);       // => true
isNumber(Infinity);  // => true

// Number objects
isNumber(new Number(42)); // => true

// Non-numbers
isNumber('42');      // => false
isNumber([1, 2, 3]); // => false
isNumber({a: 1});    // => false
isNumber(null);      // => false

Capabilities

Number Type Checking

Checks if a value is classified as a Number primitive or object. Follows ECMAScript 5 specification where NaN is considered a number type.

/**
 * Checks if value is classified as a Number primitive or object.
 * Note: NaN is considered a number per ECMAScript 5 specification.
 * 
 * @param {*} value - The value to check
 * @returns {boolean} - Returns true if value is a number, else false
 */
function isNumber(value);

Behavior:

  • Returns true for primitive numbers: 0, 42, 3.14, Infinity, -Infinity, NaN
  • Returns true for Number objects: new Number(0), new Number(42)
  • Returns false for all other types including:
    • Strings (even numeric strings like "42")
    • Arrays, objects, functions
    • Boolean values (true, false)
    • null and undefined
    • Dates, regular expressions

Examples:

const isNumber = require('lodash.isnumber');

// Primitive numbers - all return true
isNumber(0);           // => true
isNumber(42);          // => true  
isNumber(-17);         // => true
isNumber(3.14159);     // => true
isNumber(NaN);         // => true (per ECMAScript spec)
isNumber(Infinity);    // => true
isNumber(-Infinity);   // => true

// Number objects - return true
isNumber(new Number(0));    // => true
isNumber(new Number(42));   // => true
isNumber(new Number(NaN));  // => true

// Non-numbers - all return false
isNumber();                 // => false (undefined)
isNumber(null);            // => false
isNumber(false);           // => false
isNumber(true);            // => false
isNumber('42');            // => false (numeric string)
isNumber('hello');         // => false
isNumber([1, 2, 3]);       // => false
isNumber({a: 1});          // => false
isNumber(new Date());      // => false
isNumber(/regex/);         // => false
isNumber(function() {});   // => false

// Edge cases
isNumber(+"42");           // => true (string coerced to number)
isNumber(parseInt("42"));  // => true (parsed to number)
isNumber(parseFloat("3.14")); // => true (parsed to number)

Implementation Details:

  • Uses typeof value == 'number' to check for primitive numbers
  • Uses Object.prototype.toString.call(value) == '[object Number]' to detect Number objects
  • Handles cross-realm/frame Number objects correctly
  • No dependencies on other lodash functions