Alex Rivera | Logout

How can I access JavaScript function argument outside the function?

Asked 2012-02-27T10:57:49.317
9

Can I access the function arguments outside the function?

Here is my code:

function viewmessage(username,name) {
        //alert(name + " : " + username);
        $('#heading').html(name);
        $.get('/notification/viewmessage', {user:username}, function(data) {
            $('#messagesfrom').html(data);
            $('#newmessage').slideDown(200);
        });
    }
alert(name + " : " + username);
Edit
Report

1 Answer

6

You can't, unless you declare the variable outside the function.

You can only use the same variable names in the global scope:

function viewmessage(username, name){
    window.username = username;
    window.name = name;
}
alert(window.name + " : " + window.username ); // "undefined : undefined"
alert(name+" : "+username); // ReferenceError: 'name' not defined

In a local scope, you have to use variable names which are re-declared inside the function:

var username2, name2;
function viewmessage(username, name){
    username2 = username; // No "var"!!
    name2 = name;
}
alert(username2 + " : " + name2); // "undefined : undefined"
viewmessage('test', 'test2');
alert(username2 + " : " + name2); // "test : test2"
answered 2012-02-27T11:00:11.810

Your Answer