JavaScript判断对象的数据类型

     今天在写ExtjS代码的时候,用到对一个变量的数据类型的判断,JavaScript是弱语言,但定义的时候并不需要强制指定数据类型,但系统也会自动分配数据类型,判定各种数据类型如下:

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

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

</script>
2 判断是否为字符串类型
<script type="text/javascript">

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

</script>
3 判断是否为数值类型
<script type="text/javascript">
document.write(isNumber('test'),'<br/>');
document.write(isNumber(10),'<br/>');
function isNumber(obj){
return (typeof obj=='number')&&obj.constructor==Number;
}

</script>
4 判断是否为日期类型
<script type="text/javascript">
document.write(isDate(new Date()),'<br/>');
document.write(isDate(10),'<br/>');
function isDate(obj){
return (typeof obj=='object')&&obj.constructor==Date;
}

</script>
5 判断是否为函数
<script type="text/javascript">
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">

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

</script>

你可能感兴趣的:(JavaScript)