javascript - 如何在函数外访问 JavaScript 函数参数?

标签 javascript jquery

我可以在函数外访问函数参数吗?

这是我的代码:

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);

最佳答案

你不能,除非你在函数外声明变量。

您只能在全局范围内使用相同的变量名:

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

在局部范围内,您必须使用在函数内部重新声明的变量名:

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"

关于javascript - 如何在函数外访问 JavaScript 函数参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9463833/

相关文章:

javascript - 通知下拉列表未显示

javascript - 在 JSON 文件中搜索。

javascript - 使用 ajax 和 PHP 根据第一个选择框填充第二个选择框

javascript - AngularJs 自定义指令未与 "textarea"绑定(bind)

javascript - Bootstrap 模态目标内容未显示在模态主体中

javascript - 我想在 td 的值发生变化时更改高亮 td

javascript - 使用 || 的这段代码的确切含​​义是什么? ("OR") 运算符?

javascript - removeChild 函数不与 setTimeout 函数一起使用

javascript - 以 html post 形式存储重置密码 token 是否安全?

javascript - 使用 jQuery AJAX GET 和 AngularJS 不更新 View