var objToStr = require('./objToStr');
|
var isNaN = require('./isNaN');
|
var lowerCase = require('./lowerCase');
|
var isBuffer = require('./isBuffer');
|
exports = function(val) {
|
var lower =
|
arguments.length > 1 && arguments[1] !== undefined
|
? arguments[1]
|
: true;
|
var ret;
|
if (val === null) ret = 'Null';
|
if (val === undefined) ret = 'Undefined';
|
if (isNaN(val)) ret = 'NaN';
|
if (isBuffer(val)) ret = 'Buffer';
|
if (!ret) {
|
ret = objToStr(val).match(regObj);
|
if (ret) ret = ret[1];
|
}
|
if (!ret) return '';
|
return lower ? lowerCase(ret) : ret;
|
};
|
var regObj = /^\[object\s+(.*?)]$/;
|
|
module.exports = exports;
|