我想從asycn函數的結果中創建一個全局變量_userRegister
。怎麼做?Javascript全局變量的異步函數?
/* Socket.io-client Function */
function reportSignUp(socket, date) {
// sent to socket server
socket.emit('report signup', date);
// listenning response from server
socket.on('users signup', function (data) {
// data is the result from server
console.log('user register', data);
// make data global
_userRegister = data;
});
}
;
/* End Socket.io-client Function */
$(function() {
var _userRegister;
var socket = io();
var date = getDateTime(); // get current time from system
reportSignUp(socket, date);
console.log("_userRegister",_userRegister); // <- underfine
});
</script>
所以你得到不確定的......至於它那ASYN通話.. 。你的變量只有在收到響應時纔會被初始化......你能捕捉到響應嗎?並且初始化那裏的變量...... –
這不正是它在代碼中完成的嗎? _userRegister = data;應該已經使其全球 – Mayday
@ Mr.Noddy:我沒有任何錯誤。我只是不能讓''數據''變量全局重用 – Loint