Según http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf, JavaScript tiene 6 tipos: undefined
, null
, boolean
, string
, number
y object
.tipos de JavaScript
var und;
console.log(typeof und); // <-- undefined
var n = null;
console.log(typeof n); // <--- **object**!
var b = true;
console.log(typeof b); // <-- boolean
var str = "myString"
console.log(typeof str); // <-- string
var int = 10;
console.log(typeof int); // <-- number
var obj = {}
console.log(typeof obj); // <-- object
Pregunta 1:
¿Por qué es nula de tipo object
en lugar de null
?
Pregunta 2:
¿Qué hay de funciones?
var f = function() {};
console.log(typeof f); // <-- function
variable f
tiene tipo de function
. ¿Por qué no se especifica en la especificación como un tipo separado?
Gracias,
+1 para cavar en la especificación, en busca de la iluminación integral. –