gpt4 book ai didi

javascript - 更新后的变量未在函数外读取

转载 作者:行者123 更新时间:2023-11-30 20:30:51 25 4
gpt4 key购买 nike

我有一个 ajax 调用,成功后,我将 received 的值增加 1。getMessage() 应该只在 received < 10 为真时输入。但是函数外received的返回值始终为0,导致while无限循环。

有人有任何建议可以在函数外部看到更新后的接收值吗?

var received = 0;

while (received < 10) {
getMessage();
}

function getMessage() {
$.ajax({
url: '/Home/getData/',
type: "GET",
success: function(result) {
received += 1;
}
});
console.log(received);
}
}
});
}

最佳答案

我强烈建议您阅读重复的帖子。但是,这是解决您尝试使用异步方法的问题的一种可能解决方案。

var received = 0;

//received is < 10, start loop
getMessage();

function getMessage() {
$.ajax({
url: '/Home/getData/',
type: "GET",
success: function(result) {
received++; //increment

if (received < 10) {
console.log(received);
getMessage();
}
}
});
}

关于javascript - 更新后的变量未在函数外读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50352549/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com