what-is

    0.1.2-EOL • Public • Published

    NOTE: The package what-is was renamed to wots. Please, consider installing the renamed version.

    why?

    The library was written as a simple coding exercise, but then appeared useful to share 😉

    how?

    npm install --save what-is
    

    and then

    var whatis = require('what-is');
     
    // ...
     
    if (whatis(myNotAlwaysNumericVariable) === 'NaN') {
        // do some stuff
    }

    what?

    whatis() function returns reasonable type names for tested values:

    description input result
    null null 'null'
    undefined undefined 'undefined'
    strings 'foo' 'string'
    '' 'string'
    ['Hello', 'world!'].join(' ') 'string'
    new String() 'string'
    numbers 5 'number'
    parseInt(42) 'number'
    new Number('3') 'number'
    NaN 'NaN'
    Infinity 'Infinity'
    1 / -0 'Infinity'
    boolean values false 'boolean'
    !!nonEmptyVariable 'boolean'
    new Boolean('0') 'boolean'
    regular expressions /^test$/g 'regexp'
    new RegExp('needle', 'i') 'regexp'
    arrays ['foo', 'bar', 'baz'] 'array'
    new Array(10) 'array'
    objects { foo: 'bar'} 'object'
    {} 'object'
    new Object() 'object'
    Object.create(null) throws error (to be fixed)
    functions function () {} 'function'
    new Function('return null') 'function'
    date objects new Date() 'date'
    errors new Error('error!') 'error'
    new TypeError('type error!') 'error'
    arguments objects (function(){return arguments;})() 'arguments'
    class constructors new MyClass() 'myclass'
    new Buffer() 'buffer'
    new XMLHttpRequest() 'xmlhttprequest'
    promises new Promise(function() {}) 'promise'
    Promise.resolve('data') 'promise'
    Promise.reject(new Error('Oop!')) 'promise'

    Note: for more examples see test file

    Install

    npm i what-is

    DownloadsWeekly Downloads

    11

    Version

    0.1.2-EOL

    License

    ISC

    Last publish

    Collaborators

    • avatar