Skip to content

checks if foo is not defined, i.e. undefined, null, an empty string, array, object or NaN

License

Notifications You must be signed in to change notification settings

fibo/not-defined

Repository files navigation

not-defined

checks if foo is not defined, i.e. undefined, null, an empty string, array, object or NaN

Installation

npm install not-defined

Pros

  • Type less.
  • Better readability (even your boss will understand your code ^:).
  • Can save bytes in your builds.
  • Easier to autocomplete in editors (for instance easier than typeof foo === 'undefined').

Usage

This snippet of code

import notDefined from 'not-defined'

if (notDefined(foo)) {
  // do something, usually throw a TypeError
}

is equivalent to the following pseudocode

if (foo is not defined, i.e. is null, undefined, NaN, an empty string, array or object) {
  // do something, usually throw a TypeError
}

You can also use a shorter but still semantic form like

import no from 'not-defined'

if (no(foo)) {
  // do something, usually throw a TypeError
}

Follows a list of tested examples

no() // true
no(undefined) // true
no(null) // true
no('') // true
no([]) // true
no({}) // true
no(NaN) // true

no(0) // false
no(true) // false
no(false) // false
no('string') // false
no(['foo']) // false
no({ foo: true }) // false
no(42) // false
no(Infinity) // false
no(function () { return 1 }) // false

License

MIT

About

checks if foo is not defined, i.e. undefined, null, an empty string, array, object or NaN

Resources

License

Stars

Watchers

Forks

Packages

No packages published