js类型检查实现代码


Posted in Javascript onOctober 29, 2010
//检查我们的数字是否其实是一个字符串 
if ( num.constructor == String ) 
//如果是,则将它解析成数字 
num = parseInt( num ); 
//检查我们的字符串是否其实是一个数组 
if ( str.constructor == Array ) 
//如果是,则用逗号连接该数组,得到一个字符串 
str = str.join(',');

表1显示了对不同类型对象分别使用我所介绍的两种方法进行类型检查的结果。表格的第一列显示了我们试图找到其类型的对象。每二列是运行typeof Variable(Variable 为第一列所示的值)。此列中的所有结果都是字符串。最后,第三列显示了对第一列包含的对象运行Variable.constructor 所得的结果。些列中的所有结果都是对象。

表1. 变量类型检查

———————————————————————————————
Variable

typeof Variable

Variable.constructor
———————————————————————————————
{an:"object"}

 object

Object
["an","array"]

  object

  Array
function(){}

   function

  Function
"a string"

  string

String
55  

number

   Number
true

boolean

  Boolean
new User()

object

User
——————————————————————————————————

使用一个变量的constructor 作为对象类型的引用可能是最简单的类型检查方式。当你想要确定精确吻合的参数数目的类型传进了你的函数时,严格的类型检查在这种可能会大有帮助。

Javascript 相关文章推荐
浅析JavaScript原型继承的陷阱
Dec 03 Javascript
jQuery中ajax的使用与缓存问题的解决方法
Dec 19 Javascript
jQuery实现级联菜单效果(仿淘宝首页菜单动画)
Apr 10 Javascript
jQuery基础的工厂函数以及定时器的经典实例分析
May 20 Javascript
漫谈JS引擎的运行机制 你应该知道什么
Jun 15 Javascript
微信小程序 数据访问实例详解
Oct 08 Javascript
View.post() 不靠谱的地方你知道多少
Aug 29 Javascript
javascript实现最长公共子序列实例代码
Feb 05 Javascript
JavaScript链式调用实例浅析
Dec 19 Javascript
JavaScript Window窗口对象属性和使用方法
Jan 19 Javascript
移动端JS实现拖拽两种方法解析
Oct 12 Javascript
nuxt 页面路由配置,主页轮播组件开发操作
Nov 05 Javascript
JavaScript继承方式实例
Oct 29 #Javascript
拖动布局之保存布局页面cookies篇
Oct 29 #Javascript
JS函数验证总结(方便js客户端输入验证)
Oct 29 #Javascript
JavaScript 原型链学习总结
Oct 29 #Javascript
JavaScript 原型学习总结
Oct 29 #Javascript
用JQuery调用Session的实现代码
Oct 29 #Javascript
基于jquery 的一个progressbar widge
Oct 29 #Javascript
You might like
二进制交叉权限微型php类分享
2014/02/07 PHP
PHPExcel简单读取excel文件示例
2016/05/26 PHP
翻译整理的jQuery使用查询手册
2007/03/07 Javascript
Apply an AutoFormat to an Excel Spreadsheet
2007/06/12 Javascript
Mootools 1.2 手风琴(Accordion)教程
2009/09/15 Javascript
JS预览图像将本地图片显示到浏览器上
2013/08/25 Javascript
javascript函数重载解决方案分享
2014/02/19 Javascript
Node.js中使用计时器定时执行函数详解
2014/08/15 Javascript
JavaScript中的return语句简单介绍
2015/12/07 Javascript
基于jquery实现图片相关操作(重绘、获取尺寸、调整大小、缩放)
2015/12/25 Javascript
Bootstrap 实现查询的完美方法
2016/10/26 Javascript
深入理解Vue-cli搭建项目后的目录结构探秘
2017/07/13 Javascript
浅析vue-router jquery和params传参(接收参数)$router $route的区别
2018/08/03 jQuery
JS实现数组的增删改查操作示例
2018/08/29 Javascript
Vue的双向数据绑定实现原理解析
2020/02/17 Javascript
Python 中 Meta Classes详解
2016/02/13 Python
利用Python脚本生成sitemap.xml的实现方法
2017/01/31 Python
Python操作csv文件实例详解
2017/07/31 Python
Python爬虫爬取新浪微博内容示例【基于代理IP】
2018/08/03 Python
Python2 Selenium元素定位的实现(8种)
2019/02/25 Python
Python中的几种矩阵乘法(小结)
2019/07/10 Python
Django获取该数据的上一条和下一条方法
2019/08/12 Python
Python @property装饰器原理解析
2020/01/22 Python
详解Html5 监听拦截Android返回键方法
2018/04/18 HTML / CSS
内科护士实习自我鉴定
2013/10/17 职场文书
九年级语文教学反思
2014/02/04 职场文书
学雷锋志愿服务月活动总结
2014/03/09 职场文书
给学校的建议书
2014/03/12 职场文书
申论倡议书范文
2014/05/13 职场文书
个人授权委托书样本
2014/09/13 职场文书
员工激励培训演讲稿
2014/09/16 职场文书
机械专业毕业生自我鉴定2014
2014/10/04 职场文书
个人债务授权委托书范本
2014/10/05 职场文书
个人年终总结怎么写
2015/03/09 职场文书
老人院义工活动感想
2015/08/07 职场文书
《进击的巨人》新联动CM 兵长强势出击兽巨人
2022/04/05 日漫