![](/img/trans.png)
[英]How to return a json object from a function in jquery with no ajax call?
[英]How to return JSON from Ajax request function?
我想建立一个网站,使用客户端调用 API 和 JavaScript。 我不知道该怎么做,所以我搜索了一下,发现了 Jquery。 然后我写了发出请求的 function。 它看起来像下面这样:
async function makeRequest(url) {
await $.getJSON(url, function (data) {
console.log(data);
return data;
});
}
这工作正常,打印语句打印接收到的数据。 但是,如果我从另一个 function 调用这个 function,它不会返回任何内容。 每次都显示为未定义。 一个例子:
document.addEventListener("DOMContentLoaded", async function () {
var players = await makeRequest(
"https://phijoto.ddns.net/Playtime/playtime.json"
);
console.log(players);
});
async function makeRequest(url) {
await $.getJSON(url, function (data) {
console.log(data);
return data;
});
}
如果我运行它,它会通过第二个打印语句打印出接收到的数据,但第一个总是返回“未定义”。 我能做些什么呢?
你必须从makeRequest
返回一些东西。
另外:不要混合回调和承诺,充其量它会使代码混乱。
async function makeRequest(url) {
const data = await $.getJSON(url);
console.log(data);
return data;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.