typeof is the 'official' function that one uses to get the type in javascript, however in certain cases it might yield some unexpected results ...
1. Strings
typeof "String" or
typeof Date(2011,01,01)
"string"
2. Numbers
typeof 42
"number"
3. Bool
typeof true (valid values true and false)
"boolean"
4. Object
typeof {} or
typeof [] or
typeof null or
typeof /aaa/ or
typeof Error()
"object"
5. Function
typeof function(){}
"function"
6. Undefined
var var1; typeof var1
"undefined"