Javascript-无法在foreach循环内调用函数

时间:2020-04-22 05:50:43

标签: javascript

我认为我从根本上误解了Java语言中的某些内容。

有人可以解释为什么尝试从forEach内部调用SyntaxError: Unexpected identifier时得到getUrlContent的原因:

(async () => {

    let sitesState = []
    urlsToCheck.forEach(url => {
        sitesState.push({
            "url": url,
            "data": await getUrlContent(url)
        })
    })

})();

async function getUrlContent(url) { ... }

为什么会发生这种情况(当然,我该如何正确编写呢?)。

任何帮助表示赞赏。

谢谢。

1 个答案:

答案 0 :(得分:1)

您在错误的函数中使用了async。检查一下。

    ( () => {

    let sitesState = []
    urlsToCheck.forEach(async(url) => {
        sitesState.push({
            "url": url,
            "data": await getUrlContent(url)
        })
    })

})();

async function getUrlContent(url) { ... }