* 型を調べる [#k7068d01]
** typeof演算子[#z50b9a8e]
プリミティブ型の型名を取得する。
 if (typeof(foo) == "boolean" ) {
   ...
 }

- string
- number
- boolean
- function
- object
- undefined

 typeof [1, 2, 3]     // => "object"
 typeof parseInt("a") // => "number"

** instanceof演算子[#b4791a98]
 var obj = {};
 var arr = [];
 
 obj instanceof Object // => true
 obj instanceof Array  // => false
 
 arr instanceof Object // => true
 arr instanceof Array  // => true

** constructor.toString() [#e43d2032]
以下のようなオブジェクトがあるとして、
 function Foo(v){ this.v = v; };
 foo = new Foo();
 bar = { BAR: 1 };

typeof演算子の結果はobjectしか分からない。
 typeof foo // => "object"
 typeof bar // => "object"

その詳細を知るには以下のようにする。
その詳細を知るには以下のようにconstructor.toString()を使う。
 foo.constructor.toString(); // => "function Foo(v){ this.v = v; }"
  
 bar.constructor.toString(); // => "function Object() { [native code] }

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS