小编给大家分享一下JS如何判断数据类型,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名申请、虚拟空间、营销软件、网站建设、临淄网站维护、网站推广。JS判断数据类型的方法有:typeof方法用于返回该类型的字符串形式,instanceof方法用来判断原型,constructor方法以及Object.prototype.toString 方法
方法一:typeof方法
typeof 是一个操作符,右侧是一个一元表达式,并返回这个表达式的数据类型。返回的结果用该类型的字符串的形式表示,包括:number、boolean、symbol、string、object、undefined、function 等。
返回值分以下几种类型:
对于基本类型。除了null值返回object以外,其他均返回正确的结果
对于引用值来说,除了function返回function类型,其他都返回object类型
例:
效果图:
方法二:instanceof方法
instanceof 是用来判断 A 是否为 B 的实例,表达式为:A instanceof B,如果 A 是 B 的实例,则返回 true,否则返回 false。 在这里需要特别注意的是:instanceof 检测的是原型。
返回的结果:true
方法三:constructor方法
当一个函数被定义时,JS引擎会为它添加 prototype 原型,然后再在 prototype上添加一个 constructor 属性,并让其指向该函数的引用。
当执行 var f = new F() 时,F被当成了构造函数,f 是F的实例对象,此时 F 原型上的 constructor 传递到了 f 上,因此 f.constructor == F
方法四:Object.prototype.toString 方法
toString是Object原型对象上的一个方法,该方法默认返回其调用者的具体类型,更严格的讲,是 toString运行时this指向的对象类型, 返回的类型格式为[object,xxx],xxx是具体的数据类型,其中包括:String,Number,Boolean,Undefined,Null,Function,Date,Array,RegExp,Error,HTMLDocument等等都可以通过这个方法获取到。
console.log(Object.prototype.toString.call(num)); console.log(Object.prototype.toString.call('')) ; console.log(Object.prototype.toString.call(1)) ; console.log(Object.prototype.toString.call(true)) ; console.log(Object.prototype.toString.call(null)) ; console.log(Object.prototype.toString.call(new Function()) ); console.log(Object.prototype.toString.call(new Date())) ; console.log(Object.prototype.toString.call([])) ; console.log(Object.prototype.toString.call(document)) ; console.log(Object.prototype.toString.call(window) );
效果图:
看完了这篇文章,相信你对JS如何判断数据类型有了一定的了解,想了解更多相关知识,欢迎关注创新互联网站制作公司行业资讯频道,感谢各位的阅读!