Javascript 根据.getJSON的结果设置变量值

Javascript 根据.getJSON的结果设置变量值,javascript,jquery,json,Javascript,Jquery,Json,我正在尝试将电子邮件地址设置为变量,以便以后使用。电子邮件以及其他配置文件信息存储在JSON文件中。以下是我的JavaScript代码: var email = "missing"; $.getJSON("/api/v1/users/USERID/profile", function(profiledata) { var email = profiledata.primary_email; }); console.log(email); 写入

我正在尝试将电子邮件地址设置为变量,以便以后使用。电子邮件以及其他配置文件信息存储在JSON文件中。以下是我的JavaScript代码:

var email = "missing";

$.getJSON("/api/v1/users/USERID/profile", function(profiledata) {
    var email = profiledata.primary_email;
});

console.log(email);
写入控制台的结果为“丢失”。我希望结果是用户的电子邮件

然而,如果我要这么做

$.getJSON("/api/v1/users/USERID/profile", function(profiledata) {
    console.log(profiledata.primary_email);
});

它将正确输出电子邮件地址值,但仅输出到控制台。如何将电子邮件地址存储为一个变量,以备以后使用?

请不要只发布代码作为答案,还要解释代码的作用以及如何解决问题。带有解释的答案通常更有帮助,质量更好,更容易吸引选票。
var email = "missing";

$.getJSON("/api/v1/users/USERID/profile", function(profiledata) {
    email = profiledata.primary_email;
}).done(function() {
   console.log(email);
  });