jQuery や underscore.js では isFunction とか isArray とかの型判定関数的なものがあります。 え?ライブラリ使わないとJavaScriptはろくに型すら判別できないの? 半分YESで半分NO。 そもそも typeof とはなんぞやというお話し。 よく typeof と instanceof の違いについて、 「typeof は型の文字列表現を返して、instanceof は型から派生されたかどうかを返すから戻り値は違えどやってることは一緒」 的な事を耳にしますが全くもって違います。 まず、JavaScript で言う型とは何か? JavaScript はクラスを持ちません。よって型を作れません。 え? new Object() とかできるけど? var obj = new Object() として時の obj は確かにObject型のインスタンスオブ
![typeof やら instanceof やら toString.apply やら - Kokudoriing](https://cdn-ak-scissors.b.st-hatena.com/image/square/5fe0b1c13e60ee86dee4c3c09d09e8c17d1ae4ad/height=288;version=1;width=512/http%3A%2F%2Fecx.images-amazon.com%2Fimages%2FI%2F51ZoMJ%2BrLhL.jpg)