1
2
3
4
5
6
7
8
9
10
11
12
13
14
function getType(target) {
return Object.prototype.toString.call(target).slice(8, -1);
}

getType(123); // Number
getType('string'); // String
getType(true); // Boolean
getType(undefined); // Undefined
getType(null); // Null
getType({}); // Object
getType([]); // Array
getType(function () {}); // Function
getType(/123/); // Regexp
getType(new Date()); // Date