这是我的代码:
var lastStampAlpha = 0;
var lastStampBravo = 0;
var lastStampCharlie = 0;
var url = localPath + 'app/data/get-messages-id/resource/null';
jQuery.getJSON(url, function(data){
lastStampAlpha = data.alpha;
lastStampBravo = data.bravo;
lastStampCharlie = data.charlie;
});
这是我的JSON数据;
{"alpha":"60","bravo":0,"charlie":0}
当我向它分配data.alpha
后尝试使用lastStampAlpha时,它没有使用我试图将这些变量分配给的JSON数据。有什么想法吗?
答案 0 :(得分:1)
一旦回调被触发,您必须确保只尝试访问变量。
回调是getJSON方法中的函数。
确保在将值分配给变量之后,从回调中执行任何函数使用这些变量。
答案 1 :(得分:1)
如果你这样做:
var lastStampAlpha = 0;
var lastStampBravo = 0;
var lastStampCharlie = 0;
var url = localPath + 'app/data/get-messages-id/resource/null';
jQuery.getJSON(url, function(data){
lastStampAlpha = data.alpha;
lastStampBravo = data.bravo;
lastStampCharlie = data.charlie;
});
Alert(lastStampAlpha);
消息将为0。
如果你这样做:
var lastStampAlpha = 0;
var lastStampBravo = 0;
var lastStampCharlie = 0;
var url = localPath + 'app/data/get-messages-id/resource/null';
jQuery.getJSON(url, function(data){
lastStampAlpha = data.alpha;
lastStampBravo = data.bravo;
lastStampCharlie = data.charlie;
useVariables();
});
function useVariables(){
Alert(lastStampAlpha);
}
信息将是60。
答案 2 :(得分:0)
jQuery.when(getMessageIds()).done(function(){})
function getMessageIds(){
var url = localPath + 'app/data/get-messages-id/resource/null';
return jQuery.getJSON(url, function(data){
lastStampAlpha = data.alpha;
lastStampBravo = data.bravo;
lastStampCharlie = data.charlie;
});
}