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

说明: 
前段时间把 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 
 
//    var a=[0]; 
        document.write(isArray(a),'
'); 
    function isArray(obj){ 
        return (typeof obj=='object')&&obj.constructor==Array; 
    } 
//]]> 
 


2 判断是否为字符串类型

linenum 
 
//    document.write(isString('test'),'
'); 
    document.write(isString(10),'
'); 
    function isString(str){ 
        return (typeof str=='string')&&str.constructor==String; 
    } 
//]]> 
 


3 判断是否为数值类型

linenum 
 
//    document.write(isNumber('test'),'
'); 
    document.write(isNumber(10),'
'); 
    function isNumber(obj){ 
        return (typeof obj=='number')&&obj.constructor==Number; 
    } 
//]]> 
 


4 判断是否为日期类型

linenum 
 
//    document.write(isDate(new Date()),'
'); 
    document.write(isDate(10),'
'); 
    function isDate(obj){ 
        return (typeof obj=='object')&&obj.constructor==Date; 
    } 
//]]> 
 


5 判断是否为函数

linenum 
 
//    document.write(isFunction(function test(){}),'
'); 
    document.write(isFunction(10),'
'); 
    function isFunction(obj){ 
        return (typeof obj=='function')&&obj.constructor==Function; 
    } 
//]]> 
 


6 判断是否为对象


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

你可能感兴趣的:(javascript 简单高效判断数据类型 系列函数 By shawl.qiu)