現在,你可能有這樣的事情:
var user_login_status = {};
$.getJSON(check_login_status, function (data) {
user_login_status['errorCode'] = data.errorCode;
user_login_status['message'] = data.message;
user_login_status['is_login'] = data.is_login;
});
// do something with the array
doSomethingWith(user_login_status[ '...' ]); // <-- won't work
doSomethingElse();
// etc etc
兩個選擇:要麼延長回調包括函數/腳本的其餘部分:
var user_login_status = {};
$.getJSON(check_login_status, function (data) {
user_login_status['errorCode'] = data.errorCode;
user_login_status['message'] = data.message;
user_login_status['is_login'] = data.is_login;
// do something with the array
doSomethingWith(user_login_status[ '...' ]);
doSomethingElse();
// etc etc
});
或者,而不是一個匿名函數將回調和腳本的其餘部分放入一個已命名的函數中:
var user_login_status = {};
$.getJSON(check_login_status, restOfTheProgram);
function restOfTheProgram(data) {
user_login_status['errorCode'] = data.errorCode;
user_login_status['message'] = data.message;
user_login_status['is_login'] = data.is_login;
// do something with the array
doSomethingWith(user_login_status[ '...' ]);
doSomethingElse();
// etc etc
}
(另請注意,我將user_login_status
變量更改爲一個對象; JavaScript沒有關聯數組。使用數組是因爲數組實際上是對象,但它可能會帶來一些意想不到的副作用。)
來源
2013-05-08 10:00:00
JJJ
AJAX:**異步** JavaScript和XML。 – elclanrs 2013-05-08 09:35:57
把「console.log(user_login_status);」在回調函數 – ltebean 2013-05-08 09:38:07
@Ibean:好的,但我仍然無法存儲數據,對吧? – 3zzy 2013-05-08 09:39:51