Javascript VAR的问题

use*_*020 0 javascript

我遇到了以下代码的问题.如果我删除var user_idvar company_id,JavaScript的正常工作.

为什么这不起作用?

var user_id = user_id;  
var company_id = company_id;


if (pageNum == 1)
    strActionPage = CurrentPath + "upload.php?act=store&user_id=" + user_id;

else

    strActionPage = CurrentPath + "upload.php?act=store&company_id" + company_id;

for(i=0;i<4;i++){
    if(document.getElementsByName("ImageType").item(i).checked == true){
        strImageType  = i + 1;
        break;
    }
}
Run Code Online (Sandbox Code Playgroud)

Jim*_*uls 9

var语句声明当前函数范围内的变量,将具有相同名称的更高范围中的任何变量隐藏.

您的两行代码是创建新变量,user_idcompany_id在此函数的整个持续时间内完全隐藏外部变量,然后将它们分配给自己.

所以你要将每个变量都设置为undefined.