时间:2021-05-26
本文实例讲述了JavaScript基于自定义函数判断变量类型的实现方法。分享给大家供大家参考,具体如下:
通常用typeof来判断js变量的类型,但很多时候仅仅typeof满足不了要求的。
我写了一个自定义函数来做这个事,判断的比较全面了。
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()); //undefinedalert (varType( 100 )); //numberalert (varType({})); //Objectalert (varType([])); //Arrayalert (varType(/ /)); //RegExpalert (varType( new Date ())); //Datealert (varType( Date )); //functionalert (varType( Object )); //functionalert (varType( RegExp )); //function//对于DOM对象,各浏览器可能会有不同值alert (varType( window )); //IE:HTMLWindow2 FF:Windowalert (varType( document )); //IE:HTMLDocument FF:HTMLDocumentalert (varType( document .body)); //IE:HTMLBody FF:HTMLBodyElementalert (varType( Option )); //IE:Object FF:functionalert (varType( Image )); //IE:Object FF:functionalert (varType( navigator )); //IE:DispHTMLNavigator FF:Navigator//以下几个只适用于IE,其他内核浏览器不支持alert (varType( ActiveXObject )); //IE:functionalert (varType( Enumerator )); //IE:functionalert (varType( new ActiveXObject ( "Scripting.Dictionary" ))); //IE:Dictionaryalert (varType( new Enumerator ())); //IE:Enumerator更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript数学运算用法总结》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》及《JavaScript遍历算法与技巧总结》
希望本文所述对大家JavaScript程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
前言SQLServer开发过程中,为了传入数据集类型的变量(比如接受C#中的DataTable类型变量),需要定义“用户自定义表类型”,通过“用户自定义表类型”
OOP语言使我们有能力自定义对象和变量类型。面向对象编程JavaScript是面向对象的编程语言(OOP)。OOP语言使我们有能力定义自己的对象和变量类型。对象
本文实例讲述了javascript自定义in_array()函数实现方法。分享给大家供大家参考。具体如下:functionin_array(what,where
JavaScript本身没有判断一个变量是不是空值的函数,因为变量有可能是string,object,number,boolean等类型,类型不同,判断方法也不
方法一、自定义函数实现,不方便自定义调用functionFillZero(p){returnnewArray(3-(p+'').length+1).join('