日期:2014-05-16  浏览次数:20502 次

如何检查js变量类型?
当点击每个DIV时,执行myarray()函数;返回数组名等于该DIV的ID值的组数内容。如果该数组不存在则执行另一个语句。
问题是:如果该数组不存在,在FF浏览器下没有反应,不能正常执行这个语句,请帮忙解决一下,谢谢!!



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
</html>
<head> 
<meta http-equiv="Content-Type" content="text/html;charset=utf8" /></head><body><html>   
<head>
<script>window.onload=function(){pikfn()}</script>   
</head>       
<body>   
<script>  
name1=["obj1","obj2"],name2=["obj4","obj5","obj6"],name3=["obj5","obj6","obj7","obj8"];
pik=name1;
function myarray(pik){
if(typeof(pik)!="object"||!pik.length){alert("如果该数组不存在则执行这个");return false}//如果该数组不存在,则执行上面这个语句,但是在FF浏览器下没有反应,不能正常执行这个语句,请帮忙解决一下?
alert(pik.length)
}
myarray(pik)
function pikfn(){
    div=document.getElementsByTagName("div");
    for(var i=0; i<div.length; i++){
        div[i].onclick=function(){
pik=this.id;
        return myarray(eval(pik));//当点击每个DIV时,执行myarray()函数;返回数组名等于该DIV的ID值的组数内容。如果该数组不存在则执行另一个语句。问题是:如果该数组不存在,在FF浏览器下没有反应,不能正常执行这个语句,请帮忙解决一下,谢谢!!
        }
    }
}

</script>    
<div id="name1" style="width:50px;height:30px;background:#ff0000;margin:10px;" ></div>    
<div id="name2" style="width:50px;height:30px;background:#ff0000;margin:10px;" ></div>        
<div id="name3" style="width:50px;height:30px;background:#ff0000;margin:10px;" ></div>    
<div id="name4" style="width:50px;height:30px;background:#ff0000;margin:10px;" ></div>
</body>   
</html>

</body></html>

------解决方案--------------------
如何检查js变量类型

typeof
------解决方案--------------------
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
</html>
<head> 
<meta http-equiv="Content-Type" content="text/html;charset=utf8" /></head><body><html>   
<head>
<script>window.onload=function(){pikfn()}</script>   
</head>       
<body>   
<script>  
name1=["obj1","obj2"],name2=["obj4","obj5","obj6"],name3=["obj5","obj6","obj7","obj8"];
pik=name1;
function myarray(pik){
if(typeof(pik)!="object"
------解决方案--------------------
!pik.length){alert("如果该数组不存在则执行这个");return false}//如果该数组不存在,则执行上面这个语句,但是在FF浏览器下没有反应,不能正常执行这个语句,请帮忙解决一下?
alert(pik.length)
}
myarray(pik)
function pikfn(){
    div=document.getElementsByTagName("div");
    for(var i=0; i<div.length; i++){
        div[i].onclick=function(){
        pik=this.id;