javascript 简单高效判断数据类型 系列函数 By shawl.qiu


Posted in Javascript onMarch 06, 2007

说明: 
前段时间把 ASP VBScript 掌握得差不多的时候, 就转而学习 Javascript/Jscript, 主要是学 Jscript 啦. 
不过这两者基本上没什么区别, 唯一不同的是 Jscript 没有客户端的概念. 

在刚开始时, 发现 VBS 的一些实用函数 Js 好多都没有, formatNumber 呀 isArray 呀 isDate 呀 等等. 
还有日期对象也是很奇怪, 不能直接加加减减, 要set***...

不过对 Javascript/Jscript 掌握到一定程度的时候, 会发现他比 VBS 强上 N 倍, 强的地方就在于 他语法自由, VBS 没有的某某函数, 在 Js 中只要搞个 prototype 或建个判断函数就完全可以实现相同功能. 另一强得比较明显的地方是随处可用正则. 

呀, 废话一堆, 接招吧. 

目录:
1 判断是否为数组类型
2 判断是否为字符串类型
3 判断是否为数值类型
4 判断是否为日期类型
5 判断是否为函数
6 判断是否为对象

shawl.qiu
2006-11-13
 http://blog.csdn.net/btbtd

1 判断是否为数组类型

linenum 
<script type="text/javascript"> 
//<![CDATA[ 
    var a=[0]; 
        document.write(isArray(a),'<br/>'); 
    function isArray(obj){ 
        return (typeof obj=='object')&&obj.constructor==Array; 
    } 
//]]> 
</script> 

2 判断是否为字符串类型

linenum 
<script type="text/javascript"> 
//<![CDATA[ 
    document.write(isString('test'),'<br/>'); 
    document.write(isString(10),'<br/>'); 
    function isString(str){ 
        return (typeof str=='string')&&str.constructor==String; 
    } 
//]]> 
</script> 

3 判断是否为数值类型

linenum 
<script type="text/javascript"> 
//<![CDATA[ 
    document.write(isNumber('test'),'<br/>'); 
    document.write(isNumber(10),'<br/>'); 
    function isNumber(obj){ 
        return (typeof obj=='number')&&obj.constructor==Number; 
    } 
//]]> 
</script> 

4 判断是否为日期类型

linenum 
<script type="text/javascript"> 
//<![CDATA[ 
    document.write(isDate(new Date()),'<br/>'); 
    document.write(isDate(10),'<br/>'); 
    function isDate(obj){ 
        return (typeof obj=='object')&&obj.constructor==Date; 
    } 
//]]> 
</script> 

5 判断是否为函数

linenum 
<script type="text/javascript"> 
//<![CDATA[ 
    document.write(isFunction(function test(){}),'<br/>'); 
    document.write(isFunction(10),'<br/>'); 
    function isFunction(obj){ 
        return (typeof obj=='function')&&obj.constructor==Function; 
    } 
//]]> 
</script> 

6 判断是否为对象
<script type="text/javascript">

linenum 
//<![CDATA[ 
    document.write(isObject(new Object()),'<br/>'); 
    document.write(isObject(10),'<br/>'); 
    function isObject(obj){ 
        return (typeof obj=='object')&&obj.constructor==Object; 
    } 
//]]> 
</script>

Javascript 相关文章推荐
Extjs中ComboBoxTree实现的下拉框树效果(自写)
May 28 Javascript
jQery使网页在显示器上居中显示适用于任何分辨率
Jun 09 Javascript
js中substring和substr两者区别和使用方法
Nov 09 Javascript
浏览器复制插件zeroclipboard使用指南
Mar 26 Javascript
JavaScript利用HTML DOM进行文档操作的方法
Mar 28 Javascript
asp.net+jquery.form实现图片异步上传的方法(附jquery.form.js下载)
May 05 Javascript
动态JavaScript所造成一些你不知道的危害
Sep 25 Javascript
jQuery手指滑动轮播效果
Dec 22 Javascript
详解微信小程序 wx.uploadFile 的编码坑
Jan 23 Javascript
axios基本入门用法教程
Mar 25 Javascript
Vue学习之路之登录注册实例代码
Jul 06 Javascript
关于引入vue.js 文件的知识点总结
Jan 28 Javascript
javascript实现划词标记+划词搜索功能
Mar 06 #Javascript
用一段js程序来实现动画功能
Mar 06 #Javascript
用javascript动态调整iframe高度的方法
Mar 06 #Javascript
静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。
Mar 06 #Javascript
限制文本字节数js代码
Mar 06 #Javascript
用Div仿showModalDialog模式菜单的效果的代码
Mar 05 #Javascript
HTML-CSS群中单选引发的“事件”
Mar 05 #Javascript
You might like
php下删除一篇文章生成的多个静态页面
2010/08/08 PHP
PHP购物车类Cart.class.php定义与用法示例
2016/07/20 PHP
分享20款好玩的jQuery游戏
2011/04/17 Javascript
IE的fireEvent方法概述及应用
2013/02/22 Javascript
Jquery 自定义动画概述及示例
2013/03/29 Javascript
详谈JavaScript内存泄漏
2014/11/14 Javascript
JS判断网页广告是否被浏览器拦截过滤的代码
2015/04/05 Javascript
JS实现同一个网页布局滑动门和TAB选项卡实例
2015/09/23 Javascript
js小数运算出现多位小数如何解决
2015/10/08 Javascript
浅谈angular2路由预加载策略
2017/10/04 Javascript
Three.js开发实现3D地图的实践过程总结
2017/11/20 Javascript
微信小程序自定义导航栏实例代码
2019/04/05 Javascript
JavaScript数组排序功能简单实现
2020/05/14 Javascript
如何在postman测试用例中实现断言过程解析
2020/07/09 Javascript
Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)
2020/08/28 Javascript
Python的collections模块中namedtuple结构使用示例
2016/07/07 Python
Python判断一个三位数是否为水仙花数的示例
2018/11/13 Python
使用 python pyautogui实现鼠标键盘控制功能
2019/08/04 Python
下载官网python并安装的步骤详解
2019/10/12 Python
解决django中form表单设置action后无法回到原页面的问题
2020/03/13 Python
如何配置关联Python 解释器 Anaconda的教程(图解)
2020/04/30 Python
HTML5计时器小例子
2013/10/15 HTML / CSS
酒店服务与管理毕业生求职信
2013/11/02 职场文书
理工类毕业自我鉴定
2014/02/20 职场文书
一年级评语大全
2014/04/23 职场文书
白血病捐款倡议书
2014/05/14 职场文书
建材投资建议书
2014/05/16 职场文书
青年教师师德演讲稿
2014/08/26 职场文书
逃课打麻将检讨书
2014/10/05 职场文书
2014年建筑工程工作总结
2014/12/03 职场文书
2015年护士节慰问信
2015/03/23 职场文书
自主招生英文自荐信
2015/03/25 职场文书
祝寿主持词
2015/07/02 职场文书
个人销售励志奋斗口号
2019/12/05 职场文书
80行代码写一个Webpack插件并发布到npm
2021/05/24 Javascript
详细谈谈MYSQL中的COLLATE是什么
2021/06/11 MySQL