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 相关文章推荐
微博@符号的用户名提示效果。(想@到谁?)
Nov 05 Javascript
AngularJS基础 ng-include 指令简单示例
Aug 01 Javascript
概述jQuery中的ajax方法
Dec 16 Javascript
老生常谈jquery中detach()和remove()的区别
Mar 02 Javascript
详解浏览器缓存和webpack缓存配置
Jul 06 Javascript
vue 修改 data 数据问题并实时显示的方法
Aug 27 Javascript
vue3.0 CLI - 2.6 - 组件的复用入门教程
Sep 14 Javascript
vue实现绑定事件的方法实例代码详解
Jun 20 Javascript
JavaScript 继承 封装 多态实现及原理详解
Jul 29 Javascript
基于JavaScript伪随机正态分布代码实例
Nov 07 Javascript
Node登录权限验证token验证实现的方法示例
May 25 Javascript
ES11新增的这9个新特性,你都掌握了吗
Oct 15 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模拟asp中的XmlHttpRequest实现http请求的代码
2011/03/24 PHP
PHP5权威编程阅读学习笔记 附电子书下载
2012/07/05 PHP
php中$美元符号与Zen Coding冲突问题解决方法分享
2014/05/28 PHP
功能强大的PHP POST提交数据类
2016/07/15 PHP
php实现登陆模块功能示例
2016/10/20 PHP
JQuery 风格的HTML文本转义
2009/07/01 Javascript
用Jquery实现可编辑表格并用AJAX提交到服务器修改数据
2009/12/27 Javascript
JavaScript 学习笔记二 字符串拼接
2010/03/28 Javascript
11款新鲜的jQuery插件[附所有demo下载]
2011/01/24 Javascript
JS实现div内部的文字或图片自动循环滚动代码
2013/04/19 Javascript
Javascript加载速度慢的解决方案
2014/03/11 Javascript
jquery中页面Ajax方法$.load的功能使用介绍
2014/10/20 Javascript
jquery中添加属性和删除属性
2015/06/03 Javascript
javascript实现tab切换特效
2015/11/12 Javascript
Bootstrap基本样式学习笔记之表格(2)
2016/12/07 Javascript
详解bootstrap导航栏.nav与.navbar区别
2017/11/23 Javascript
Bootstrap modal只加载一次数据的解决办法(推荐)
2017/11/24 Javascript
解决bootstrap模态框数据缓存的问题方法
2018/08/10 Javascript
vue项目创建并引入饿了么elementUI组件的步骤
2019/04/11 Javascript
vue 项目 iOS WKWebView 加载
2019/04/17 Javascript
JavaScript在web自动化测试中的作用示例详解
2019/08/25 Javascript
微信小程序开发打开另一个小程序的实现方法
2020/05/17 Javascript
[01:58]2018DOTA2亚洲邀请赛趣味视频——交流
2018/04/03 DOTA
查看python下OpenCV版本的方法
2018/08/03 Python
Python中三维坐标空间绘制的实现
2020/09/22 Python
HTML table 表格边框的实现思路
2019/10/12 HTML / CSS
华为c/c++笔试题
2016/01/25 面试题
市三好学生主要事迹
2014/01/28 职场文书
销售经理工作职责
2014/02/03 职场文书
乡镇党建工作汇报材料
2014/08/14 职场文书
出国签证在职证明
2014/09/20 职场文书
警察群众路线整改措施
2014/09/26 职场文书
2015年度团总支工作总结
2015/04/23 职场文书
工商局调档介绍信
2015/10/22 职场文书
Nginx快速入门教程
2021/03/31 Servers
如何使用Python提取Chrome浏览器保存的密码
2021/06/09 Python