为什么我无法写入全局变量?无法写入全局变量
var postid=1;
request("get", {data:1}, function(data) {
alert(data.response[1].id); // get data
postid=2;
});
alert(postid); // get "1"
为什么我无法写入全局变量?无法写入全局变量
var postid=1;
request("get", {data:1}, function(data) {
alert(data.response[1].id); // get data
postid=2;
});
alert(postid); // get "1"
因为你的AJAX请求是异步和要求完成之前警告正在发生并将postid
值2
你的事件的顺序有可能:
和我能做些什么?我使用api并希望使用我得到的数据 – user3356784
我使用API并按原样获取 – user3356784
@ user3356784您的意见没有多大意义。它是一个API是没有意义的。这是你的*** JS代码,需要改变。将请求更改为同步或者添加一个回调方法,当请求完成时在您的函数内部触发。 – Timeout
请参见[如何返回从AJAX调用的响应?](https://stackoverflow.com/questions/ 14220321 /如何对返回的响应-从-AN-Ajax的呼叫)。 –