/**
* param: o は検出値
を表します
* return: 文字列「unknown」、「number」、「boolean」、「string」、「function」、「regexp」、「array」、「date」、「error」、「object」、または「null」を返します
*/
関数 typeOf(o){
var _toString = Object.prototype.toString // オブジェクトの toString() メソッド参照を取得します
//基本データ型と組み込みオブジェクト型をリストします。配列
の検出データ型範囲をさらに補足できます。
var _type ={
"未定義" : "未定義",
"数値" : "数値",
"ブール値" : "ブール値",
"文字列" : "文字列",
"[オブジェクト関数]" : "関数",
"[オブジェクト RegExp]" : "正規表現",
"[オブジェクト配列]" : "配列",
"[オブジェクトの日付]" : "日付",
"[オブジェクト エラー]" : "エラー"
}
return _type[typeof o] || _type[_toString.call(o)] || (o ? "object" : "null"); // 値を文字列に変換し、返された文字列に特定の文字が検出されました
}
//応用例:
var a = Math.abs;
alert(typeOf(a)); //文字列「関数」を返します
コードは非常に簡単です。手順はすべてコメントに記載されています。ここではあまり意味のないことには触れません。同じニーズを持つ友人は参考にしてください。