是否可以在javascript中将本地函数的值赋给全局变量

时间:2014-08-11 17:35:44

标签: javascript jquery jquery-ui jquery-mobile

嘿伙计们我已经在我的javascript文件中声明了一个全局变量。然后我在本地函数中为全局变量赋值。然后当我试图在其他函数中访问该全局变量的值时,该死的警告框是显示' undefined'。有没有办法在其他函数中访问局部变量的值。我不想从另一个函数调用函数并用它发送参数。我只是想将一个函数的局部变量访问到另一个函数中。 希望有人带我离开这个。

谢谢你们男孩和女孩。

代码

   var user_glob;
   var pass_glob;
   function osmlogin() {
       var user = document.getElementById('uname').value;
       var passw = document.getElementById('pwd').value;
       user_glob = user;
       pass_glob = passw;
       if (user == '') {
           document.getElementById('wrong_pwd').innerHTML = 'Please give your email_id';
       }
       else if (passw == '') {
           document.getElementById('wrong_pwd').innerHTML = 'Please give your password';
       }
       else {
           var data =
             {
                 username: user,
                 pass: passw

             };


           $.getJSON('some url?jsonp=?', data, function (data) {

               check = JSON.stringify(data['key1']);
               if (check == 1 && user != '' && passw != '') {


                   window.location.href = "#page-dashboard";
               }

               else {

                   // alert(check);

                   document.getElementById('wrong_pwd').innerHTML = 'Wrong Username or Password';
               }

           });
       }
   }

现在我想在这个函数中使用该全局变量

 function  announcement_view()
 {

var user =user_glob;
var passw = passw_glob;
 var data = {
    username: user,
    pass:passw

 };



$.getJSON('some url?jsonp=?', data, function (data) {

    var check = JSON.stringify(data['key1']);
    alert(JSON.stringify(data['key1']));
    alert(JSON.stringify(data['key2']));


    if (check == 0 && user == '' && passw == '')
    {

        //alert(user_glob);
       window.location.href = "#page-home";
    }



  });
}

1 个答案:

答案 0 :(得分:1)

如果您的代码是这样的......

var a;
function f1(){
    a= 1;
}
function f2(){
    alert(a);
}

f1();
f2();

它应该可以正常工作。

确保在提醒它的函数(在这种情况下为f2)之前调用 指定 值的函数(在本例中为f1)。