http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdfによると、JavaScript には 、 、 、 、 の 6 つundefined
のnull
タイプboolean
がstring
ありnumber
ますobject
。
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
質問1:
object
の代わりにnull 型が使用されるのはなぜnull
ですか?
質問2:
関数はどうですか?
var f = function() {};
console.log(typeof f); // <-- function
変数f
の型はfunction
です。別のタイプとして仕様で指定されていないのはなぜですか?
ありがとう、