我可以在函数外部使用函数内部的变量吗?
Can I use variables that are inside functions outside them?
async function players_online() {
const response = await fetch("http://ip:port/dynamic.json");
const data = await response.json();
console.log(data.clients);
}
我可以在其他函数中使用 data 吗?示例:
async function players() {
console.log(data.clients);
}
当我这样做时,我收到 undefined
“是”,您可以:
let data
async function players_online() {
const response = await fetch("http://ip:port/dynamic.json");
data = await response.json();
}
async function players() {
// You can't ensure data is already set!!!
console.log(data.clients);
}
但是您不能确保此时已经定义了数据。您必须通过自己的代码确保在调用 players
.
之前调用并等待 players_online
您可以通过这样的调用顺序来确保这一点:
async function players_online() {
const response = await fetch("http://ip:port/dynamic.json");
const data = await response.json();
await players(data)
}
async function players(data) {
console.log(data.clients);
}
async function players_online() {
const response = await fetch("http://ip:port/dynamic.json");
const data = await response.json();
console.log(data.clients);
}
我可以在其他函数中使用 data 吗?示例:
async function players() {
console.log(data.clients);
}
当我这样做时,我收到 undefined
“是”,您可以:
let data
async function players_online() {
const response = await fetch("http://ip:port/dynamic.json");
data = await response.json();
}
async function players() {
// You can't ensure data is already set!!!
console.log(data.clients);
}
但是您不能确保此时已经定义了数据。您必须通过自己的代码确保在调用 players
.
players_online
您可以通过这样的调用顺序来确保这一点:
async function players_online() {
const response = await fetch("http://ip:port/dynamic.json");
const data = await response.json();
await players(data)
}
async function players(data) {
console.log(data.clients);
}