我一直在研究范围,全局变量和局部变量,并尽力使其成功但没有成功。我希望有人可以为meg解决这个问题,也许我终于明白它是如何运作的。
我有一个返回IP摄像机状态的功能。
console.log(info.IsRecording);
是否打印了我希望函数返回的正确布尔值。但是camInfo什么都没有。那么显然返回camInfo返回undefined。
功能:
function camStatus(camId){
var camInfo;
var request2 = new XMLHttpRequest();
request2.open('GET', 'http://localhost:8124/Json/GetCamStatus?sourceId=' + camId + '&authToken=xxx', true);
request2.send(null)
// state changes
request2.onreadystatechange = function () {
if (request2.readyState === 4) { // done
if (request2.status === 200) { // complete
var info = JSON.parse(request2.responseText);
camInfo = info.IsRecording;
console.log(info.IsRecording);
}
}
}
return camInfo;
}