分享更有价值
被信任是一种快乐

怎么获取javascript变量的类型

文章页正文上

这篇文章主要介绍“怎么获取javascript变量的类型”,在日常操作中,相信很多人在怎么获取javascript变量的类型问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么获取javascript变量的类型”的疑惑有所帮助!接下来,请跟着小编一起来学习吧! 获取javascript变量类型的方法:1、使用typeof操作符,语法“typeof 变量”;2、使用jQuery的“$.type()”方法;3、通过构造函数来获取类型。本教程操作环境:windows7系统、javascript1.8.5&&jquery1.10.0版、Dell G3电脑。在JavaScript中,如何准确获取变量的类型名是一个经常使用的问题.但是常常不能获取到变量的精确名称,或者必须使用jQuery 中的方法,这里 我通过 typeof ,jQuery.type 和 通过构造函数来获取变量类型 这三种方法详细介绍一遍.希望可以对你提供帮助.看到题目的第一眼,有些同学可能会想到 typeof 运算符.在JavaScript语言中,给出了使用 typeof 运算符来获取基本的类型名.(注意不是基本类型)这是 typeof 的全部用法01-typeof.htm这是结果按照上面的打印结果,总结出下面要注意的几点typeof (引用类型) 除了函数, 都是 ‘object’,比如 typeof /123/typeof null 为’object’typeof undefined 为 ‘undefined’,通常, 如果使用两等号, null == undefined 为真.转换为数字的常见用法 “10”-0, 如果没有转换成功,返回NaN,由于NaN 的一个特性: NaN != NaN,故判断转换成功与否的常见做法: (这也是我参见 jQuery的源码发现的,jQuery源码读100遍都不为过)
("10x" - 0) == ("10x" - 0); // 结果为假!
现在看看jQuery是怎么做的因为 Object.prototype.to免费云主机、域名String() 方法调用结果如下上面的打印结果与不谋而合!这是jQuery.type 的核心方法注意,为什么把 null 或者 undefined 单独讨论呢,因为 在一些版本浏览器中
这是会报错的!如果是对象类型,另:由于 在一些低版本的浏览器中,typeof /123/ 会返回的是 “function” 而不是 “object”,所以这里要判断是否是函数,要明白 这里的 typeof obj === function 不是为了函数讨论的,因为函数本身就可以通过typeof 来得到类型.就直接返回class2type 中键值对的结果,,如果不是,那么一定就是基本类型, 通过 typeof 就可以啦.但是 jQuery.type 有一个很大的缺陷这是一个自定义类型// 注意,这里会打印 [object Object],通过上面的方法,无法得到精确的自定义类型
这也是 它的一个大缺陷了!下面,我们通过构造函数的方式来获取精确类型在理解这个方法之前,需要理解两个点我们知道,任何对象或者函数都直接或者间接的继承自Object 或者 Function, (其实最终Function 是继承自 Object 的,这属于原型链的知识了)。那么,任何一个对象都具有原型对象 __proto__ (这个对象只在chrome 和 firefox 暴露,但是在其他浏览器中也是存在的),这个原型对象就是这个对象的构造函数的原型属性(这里可能有点绕).由于 任何函数都具有 原型属性prototype,并且这个原型属性具有一个默认属性 constructor,它是这个函数的引用,看下面的代码发现,这两个东西其实一个东西但是,在某些情况下,需要这么写这么做,就会覆盖原本的 protype 方法,那么construcor 就不存在了,这是,必须要显示的申明这个对象在jQuery的中,就是这么做的,关于 jQuery对象封装的方式 也是非常值得研究Function.prototype.toString()
注意,这里已经不是熟悉 [object Object],而是 已经重写了.也就是,如果调用一个函数的toString() 方法.那么就会打印这个函数的函数体.好了,经过上面两个步骤,你明白我要做什么了吗?如何通过构造函数来获得变量的类型?现在要做的事 : 如何将Person 提取出来呢?
毋庸置疑,字符串切割那一套肯定可以办到,但是太 low 啦!
这里,我使用正则将Person提取出来其实,除了上面的正则,每个函数还有一个name属性,返回函数名,但是ie8 是不支持的.因此上面的代码可以写为:但是上面的代码太丑啦,将其简化还是比较麻烦,继续简化好了,已经全部弄完了,写个代码测试一下:到此,关于“怎么获取javascript变量的类型”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注云技术网站,小编会继续努力为大家带来更多实用的文章!

相关推荐: JSP如何实现页面验证码

这篇文章主要为大家展示了“JSP如何实现页面验证码”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一免费云主机、域名起研究并学习一下“JSP如何实现页面验证码”这篇文章吧。 首先在JSP页面加上生成图片的链接 运行后,jsp页面会发出”…

文章页内容下
赞(0) 打赏
版权声明:本站采用知识共享、学习交流,不允许用于商业用途;文章由发布者自行承担一切责任,与本站无关。
文章页正文下
文章页评论上

云服务器、web空间可免费试用

宝塔面板主机、支持php,mysql等,SSL部署;安全高速企业专供99.999%稳定,另有高防主机、不限制内容等类型,具体可咨询QQ:360163164,Tel同微信:18905205712

主机选购导航云服务器试用

登录

找回密码

注册