javascript变量的类型检查表
创始人
2024-12-17 16:22:38
0次

变量的类型检查表

变量                   typeof变量                 变量、构造函数(注意大写
)

{an:"object"}       object                        O
bject

["an","array"]      object                        A
rray

function(){}         function                      F
unction

"a string"           string                         S
tring

55                     number                      N
umber

true                   boolean                     B
oolean

new User()         object                        User

/*2-7使用typeof
来判断一个对象类型的例子*/
/*parseInt
方法返回与保存在 numString 中的数字值相等的整数
parseInt("abc");//返回NaN       ,用isNaN方法检测NaN
parseInt("12abc");//返回12
*/
//检查我的的数字是否是字符串
var num="12abc";
//var arr=new Array("aa","bb","cc");
var arr="aa,aa,a,,";
var str="mmmm";
//alert(arr);
if(typeof num=="string"
)
{
    //若是根据这个字符串解析出整数来
    num=parseInt(num);
    alert(num);//这里12
}
//    //检查数组是否实际上是字符串
if(typeof arr=="string")
{
    //若是,则根据逗号切分出数组来
    //arr=arr.split(",")
    alert(arr);
} 
else{
   // arr=arr.split(",")
    alert(arr);
}

/*2-8使用构造函数属性constructor
来判断对象的类型*/
检查我的的数字是否是字符串
if(num.constructor==String)

    num=parseInt(num);
    alert(num)
//检查数组是否实际上是字符串
if(str.constructor==Array)
    str=str.join(',');
    alert(str);

/*api JavaScript constructor 属性:constructor 属性返回对创建此对象的 Boolean 函数的引用。语法:object.constructor
*/
var test=new Boolean();

if (test.constructor==Array)
{
document.write("This is an Array");
}
if (test.constructor==Boolean)
{
document.write("This is a Boolean");
}
if (test.constructor==Date)
{
document.write("This is a Date");
}
if (test.constructor==String)
{
document.write("This is a String");
}
输出:This is a Boolean

/*2-9一个函数,可以用来严格维护传入函数的所有参数*/
function strict(types,args){
    //保证类型的数量和参数的数量相匹配
    if(types.length!=args.length){
        throw "Invalid number of arguments.Expected"+ types.length+ ",received" +args.length +"      instead";
    }
   
    //遍历所有的参数,检查它们的类型
    for (var i=0;i    {
        if(args[i].constructor!=types[i])
        {
            throw "Invalid argument type. Expected "+ types[i].name+",received "+args[i].constructor.name+" instead";
        }//如果把userList中的strict([String,Number,Array],arguments);换成strict([String,Number,Object],arguments);//则在firefox中显示uncaught exception: Invalid argument type. Expected Object,received Array instead
    }
   
  
   
  
}

 
//一个简单的函数,打印用户列表

function userList(prefix,num,users){
    //保证需要prefix是字符串,num是数字,users是数组
    strict([String,Number,Array],arguments);
   
    //遍历'num'个用户
    for(var i=0;i    {
        //显示第个用户的信息
        alert(prefix+":"+users[i]);
    }
}

 function test()
    {
        var prefix="ddd";
        var num=parseInt("3");
        var user=["11","22",""];//新建数组,并直按赋值,显示dd:11然后显示ddd:22,最后显示ddd:
//        var user=new Array();//新建数组, 显示ddd:11然后显示ddd:22,最后显示ddd:undefined
//        user[0]="11";//给数组赋值
//        user[1]="22";
        userList(prefix,num,user);//
       
    }

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...