- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
js判断各种数据类型
js 判断各种数据类型
???????了解js的都知道,?有个typeof??用来判断各种数据类型,有两种写法:typeof?? xxx?? ,typeof(xxx)
???????如下实例:
?????? typeof?? 2????? 输出?? number?????? typeof?? null ? 输出?? object
? ?? ? typeof?? {}????输出?? object
?????? typeof??? []????输出?? object
?????? typeof?? (function(){})???输出??function
?????? typeof??? undefined? ?????? 输出??undefined
?????? typeof?? 222???????????????? 输出? ? string
????? typeof? true???????????????????输出? ? ?boolean
????这里面包含了js里面的五种数据类型? number?? string ? ?boolean ??undefined ? ? object和函数类型?function
?????看到这里你肯定会问了:我怎么去区分对象,数组和null呢?
?????接下来我们就用到另外一个利器:Object.prototype.toString.call
?????这是对象的一个原生原型扩展函数,用来更精确的区分数据类型。
?????我们来试试这个玩儿意儿:
?????var???gettype=Object.prototype.toString
??????? gettype.call(aaaa)??? ? ? 输出? ? ? [object String]
? ? ?? ?gettype.call(2222) ? ? ? ? 输出 ? ?? [object Number]
?????? ?gettype.call(true)????????? 输出 ? ? ?[object Boolean]
??????? gettype.call(undefined)? 输出 ? ? ?[object Undefined]
??????? gettype.call(null)????????????????? 输出 ? [object Null]
???????? gettype.call({})? ???????????????? 输出?? [object Object]
???????? gettype.call([])??????????????????? 输出 ? [object Array]???????? gettype.call(function(){})???? 输出 ? [object Function]
????? 看到这里,刚才的问题我们解决了。
????? 其实js?里面还有好多类型判断????? [object HTMLDivElement]???? div 对象? , ?? [object HTMLBodyElement]? body 对象 ?? ,[object Document](IE)或者? [object HTMLDocument](firefox,google) ......各种dom节点的判断,这些东西在我们写插件的时候都会用到。
?????可以封装的方法如下? :
???? ?var???gettype=Object.prototype.toString
?????var????utility={
????????? isObj:function(o){
?????????????? return??? gettype.call(o)==[object Object];
????????? },
????????? isArray:function(o){
?????????????? return??? gettype.call(o)==[object Array];
????????? },
????????? isNULL:function(o){
?????????????? return??? gettype.call(o)==[object Null];
????????? },
????????? isDocument:function(){
??????????????? return??? gettype.call(o)==[object Document]|| [object HTMLDocument];
????????? }
????????? ........
??? }
?????今天讲的内容不是很多,大家对于当前所讲
原创力文档


文档评论(0)