README
to-type
Deprecated in favor ofobject-types
Get Javascript Object types
Install
npm install --save object-types
Usage
const objectTypes = require('object-types');
typeof [];
//=> 'object'
objectTypes([]);
//=> 'array'
typeof new Object(true);
//=> 'object'
objectTypes(new Object(true));
//=> 'boolean'
typeof {};
//=> 'object'
objectTypes({});
//=> 'object'
The Problem
JavaScript objects can be of various object types. As an example, a string can be a string or a string can be an object string:
typeof 'example string';
//=> string
typeof new Object('example string');
//=> object
It seems like you can treat literal strings the same as object strings:
const myArray = ['a string', new Object('my string object')];
myArray.map(elem => {
return elem.toUpperCase()
});
//=> ['A STRING', 'MY STRING OBJECT']
But not always. Equality operators do not behave the same.
const myArray = ['a string', new Object('my string object')];
typeof myArray[0] === myArray[1]
//=> false
With object-types, you can stop getting object
for all of your typeof
calls.
const myArray = [1,2,3];
const obj = new Object([1,2,3]);
typeof myArray === typeof obj;
//=> false
typeof myArray === objectTypes(obj);
//=> true
API
objectTypes(obj)
obj
Type: object
Returns the typeof object as a string:
- 'object'
- 'string'
- 'number'
- 'boolean'
- 'array'
- 'date'
- 'regexp'
- throws
TypeError
if unknown object type is inputted
Related
License
MIT © dawsonbotsford