2008年3月1日土曜日

JavaScriptによる変数型の判定

ほとんどは typeof で判定できるが、一部は instanceof で確認しないと判断できない。
太字のところはひっかかりやすいので注意。RegExpはFirefoxとIEで結果が違う。


Boolean
  typeof true => boolean

Number
  typeof 123 => number

String
  typeof "abc" => string

Object
  typeof {} => object

Array
  typeof [] => object
  [] instanceof Array => true

RegExp
  typeof /regexp/ => (Firefox2の場合) function / (IE7の場合) Object
  /regexp/ instanceof RegExp => true
  /regexp/ instanceof Function => false

Function
  typeof function(){} => function
  (function(){}) instanceof Function => true

undefined
  typeof undefined => undefined
 undefined instanceof Object => false

null
  typeof null => object
  null instanceof Object => false

0 件のコメント:

ブログ アーカイブ

tags