isArguments() | Underscore JS 日本語リファレンス

引数の型が Arguments だった時に「true」を返す。

■使用例

var obj = {
	works :  "Psyclopedia",
	author : "PSY・S [saiz]",
	music : "ファジイな痛み",
	music2 : "遠い空",
	music3 : "Parashute Limit",
	music4 : "Angel Night 天使のいる場所"
}
var func = function(){
	return _.isArguments( arguments );
};
// re = true;
var re = func( obj );

■内部構造

// var toString = ObjProto.toString;
// _[isArguments] = function( obj ){ return toString.call(obj) === "[object Arguments]"; }
  _.each(["Arguments", "Function", "String", "Number", "Date", "RegExp", "Error"], function(name) {
    _["is" + name] = function(obj) {
      return toString.call(obj) === "[object " + name + "]";
    };
  });

// IE9未満のブラウザ用と思われる(未検証)。if (!_.isArguments(arguments)) が基本 false で実行されないので。
  if (!_.isArguments(arguments)) {
    _.isArguments = function(obj) {
      return _.has(obj, "callee");
    };
  }

このページのトップへ戻る