我正在尝试访问函数外部的变量,但我得到了未定义的
meliObject.get('users/me', function (err, res) {
nickname = res.nickname;
});
console.log(nickname);
如何访问昵称?
修改
我改变了我的代码:
var nickname;
meliObject.get('users/me', function (err, res) {
nickname = res.nickname;
});
console.log(nickname);
但我仍然未定义
答案 0 :(得分:1)
该函数的结果是异步的,因此您无法执行此操作。 Javascript流程如下:运行meliObject.get
,立即返回,运行console.log(昵称),然后等待调用回调。要正确地访问console.log,只需执行以下操作:
meliObject.get('users/me', function (err, res) {
nickname = res.nickname;
console.log(nickname);
});
现在,要回答你的问题,要在函数外声明一个变量,只需使用var / let / const:
var a = 2;
(function () {
a = 3;
})();
console.log(a);
它将按预期打印。