ee-types

Reliable type detection

ee-types

Easy and reliable type detection with ES6+ support.

Desktop Browsers:

  • Chrome 7+
  • Firefox 4+
  • Safari 5.1+
  • IE 9+
  • Edge 25+

Mobile Browsers:

  • Safari iOS 6+
  • Chrome for Android 38+
  • Android Browser 4.4.4+

using npm

npm i ee-types

using bower

bower i ee-types

node

let types = require('ee-types');

require.js

you have to configure require.js to point the bower prefix to the bower_components folder.

requirejs.config({
    paths: {
        'bower': '/js/bower_components/'
    }
});

and finally load the component

require(['bower/ee-types/dist/ee-types.min'], function(types) {
    
});

Browser & Vanilla

<script src="bower/ee-types/dist/ee-types.min" />

var types = window.ee.types;

Explicity test for a type

types.array([]) // true

Get the type of some input

types(/[a-z]+/gi) // regexp
  • string
  • number
  • boolean
  • array
  • intArray
  • floatArray
  • object
  • function
  • symbol
  • date
  • regexp
  • error
  • undefined
  • buffer
  • null
  • arrayBuffer
  • map
  • weakMap
  • set
  • weakSet
  • dataView
  • float32Array
  • float64Array
  • int8Array
  • int16Array
  • int32Array
  • uInt8Array
  • uInt16Array
  • uInt32Array
  • uInt8ClampedArray
  • generator
  • promise
var types = require('ee-types');


types.string('nope');                // true
types.strign(new String('yeah'));    // true


types(2) // number

types([]]) // array
types(new Array()]) // array
types(new Int8Array()]) // int8Array


types.promise(Promise.all()) // true