javascript 如何判断一个对象的类型
2014-10-05 02:45
561 查看
<!DOCTYPE html> <html> <head> </head> <body> <script type="text/javascript"> var class2type = { '[object Boolean]' : 'boolean', '[object Number]' : 'number', '[object String]' : 'string', '[object Function]' : 'function', '[object Array]' : 'array', '[object Date]' : 'date', '[object RegExp]' : 'regexp', '[object Object]' : 'object', '[object Error]' : 'error' }; function type( obj ) { if ( obj == null ) { return obj + ""; } return typeof obj === "object" || typeof obj === "function" ? class2type[ toString.call(obj) ] || "object" : typeof obj; }; function Foo() {} function Bar() {} Bar.prototype = new Foo(); var foo = new Foo(); var bar = new Bar(); console.log(type('')); console.log(type(undefined)); console.log(type(null)); console.log(type(true)); console.log(type(false)); console.log(type(1)); console.log(type(0)); console.log(type(new String('foo'))); console.log(type(new Number(10))); console.log(type({})); console.log(type(new Date())); console.log(type(new Error())); console.log(type([1,2,3] )); console.log(type(new Array(1, 2, 3))); console.log(type(new Function("") )); console.log(type(/abc/g)); console.log(type(new RegExp("meow"))); console.log(type(new Object())); console.log(type(foo)); console.log(type(bar)); console.log(type(/abc/g)); </script> </body> </html>
<!DOCTYPE html> <html> <head> </head> <body> <script type="text/javascript"> var class2type = { '[object Boolean]' : 'boolean', '[object Number]' : 'number', '[object String]' : 'string', '[object Function]' : 'function', '[object Array]' : 'array', '[object Date]' : 'date', '[object RegExp]' : 'regexp', '[object Object]' : 'object', '[object Error]' : 'error' }; function type( obj ) { if ( obj == null ) { return obj + ""; } return typeof obj === "object" || typeof obj === "function" ? class2type[ toString.call(obj) ] || "object" : typeof obj; }; console.log(typeof null); console.log(class2type[ toString.call(null) ] ); console.log(type(null)); console.log(typeof undefined); console.log(class2type[ toString.call(undefined) ] ); console.log(type(undefined)); </script> </body> </html>
object type.html:26 undefined type.html:27 null type.html:28 undefined type.html:29 undefined type.html:30 undefined
相关文章推荐
- 【JavaScript】如何判断一个对象是未定义的?(已解决)
- javascript中如何判断一个新创建对象是无属性的空对象?
- JavaScript中如何判断一个值的类型
- JavaScript中如何将一个字符串,转换成一个对象类型
- 如何判断javascript中参数类型,对象类型。
- javascript如何判断一个对象是否是窗口
- 举例讲解如何判断JavaScript中对象的类型
- javascript如何判断参数为一个数组类型
- javascript中如何做对象的类型判断
- javascript中如何做对象的类型判断
- javascript如何判断一个对象是不是数组
- 如何判断一个对象是否是基本类型的Wrapper
- javascript如何将一个字符串转换成对象类型
- JavaScript 判断一个对象的数据类型。
- Js中如何判断一个对象为数组类型
- C++面向对象程序设计中如何判断一个对象的类类型
- JavaScript中如何判断变量是数组、函数或是对象类型
- JavaScript 如何判断一个对象{}是否为空对象
- Javascript如何判断一个变量是普通变量还是数组还是对象?
- javascript如何判断一个对象是不是Array