javascript判断变量类型的自定义函数
通常用typeof来判断js变量的类型,但很多时候仅仅typeof满足不了要求的。
我写了一个自定义函数来做这个事,判断的比较全面了。
New
function
varType(v){
if
(
typeof
v===
"object"
){
if
(v===
null
)
return
'null'
;
if
(v.
constructor
)
return
(v.
constructor
.toString()).match(/(?:
)[\w\$]+/)[
0
];
if
(
typeof
typeof2===
'undefined'
&&
window
.execScript){
window
.execScript(
'Function vbsTypeName(o):vbsTypeName=TypeName(o):End
Function'
,
'vbscript'
);
window
.execScript(
'function typeof2(o){return vbsTypeName(o)}'
,
'jscript'
);
}
if
(
typeof
typeof2!==
'undefined'
){
return
typeof2(v);
}
return
"object"
;
}
return typeof
v;
}
//对于普通js常量和js对象,各浏览器是基本一致的
alert
(varType());
//undefined
alert
(varType(
100
));
//number
alert
(varType({}));
//Object
alert
(varType([]));
//Array
alert
(varType(/ /));
//RegExp
alert
(varType(
new
Date
()));
//Date
alert
(varType(
Date
));
//function
alert
(varType(
Object
));
//function
alert
(varType(
RegExp
));
//function
//对于DOM对象,各浏览器可能会有不同值
alert
(varType(
window
));
//IE:HTMLWindow2 FF:Window
alert
(varType(
document
));
//IE:HTMLDocument FF:HTMLDocument
alert
(varType(
document
.body));
//IE:HTMLBody FF:HTMLBodyElement
alert
(varType(
Option
));
//IE:Object FF:function
alert
(varType(
Image
));
//IE:Object FF:function
alert
(varType(
navigator
));
//IE:DispHTMLNavigator FF:Navigator
//以下几个只适用于IE,其他内核浏览器不支持
alert
(varType(
ActiveXObject
));
//IE:function
alert
(varType(
相关文档:
用Javascript获取页面元素的位置
阮一峰 发表于 2009年09月14日
|
分类:首页
-> 档案
-> IT技术
制
作网页的过程中,你有时候需要知道某个元素在网页上的确切位置。
下面的教程总结了Javascript在网页定位方面的相关知识。
一、网页的绝对大 ......
JavaScript作用小结:
1 创建脚本块
1: <script language=”JavaScript”>
2: JavaScript code goes here
3: </script>
2 隐藏脚本代码
1: <script language=”JavaScript”>
2: <!--
3: document.write(“ ......
关于获取各种浏览器可见窗口大小的一点点研究。
在我本地测试当中:
在IE、FireFox、Opera下都可以使用
document.body.clientWidth
document.body.clientHeight
即可获得,很简单,很方便。
而在公司项目当中:
Opera仍然使用
document.body.clientWidth
document.body.clientHeight
可是IE和FireFox则使用
docu ......