Existem várias formas de identificar o tipo de uma variável no JavaScript, iremos compartilhar uma forma Vanilla, que até o momento nos parece funcionar para todos os casos testados
function typeOf (obj) {
return {}.toString.call(obj).split(' ')[1].slice(0, -1).toLowerCase();
}
//Resultados
typeOf(); //undefined
typeOf(null); //null
typeOf(NaN); //number
typeOf(5); //number
typeOf({}); //object
typeOf([]); //array
typeOf(''); //string
typeOf(function () {}); //function
typeOf(/a/) //regexp
typeOf(new Date()) //date




