Javascriptで変数が配列かどうかチェックするには

var isArray = function(that){
  return (Object.prototype.toString.apply(that) === "[object Array]");
};

RequireJSのソースコードより。

追記
[1,2,3].toString()すると”[object Object]“が返って来ます。この挙動の違いについてはまだよく分かってません。

追記
あれ?これでもいけるのでは?

var isArray = function(that){
  return (that instanceof Array);
}

これならもう関数にする意味もないな。

追記
こんなんでもいいよね。

var isArray = function(that){
  return (that.constructor === Array);
}
Categories: HowTo's, Tips and Tricks |Tagged , , | Trackback URL |