带有fetch的Javascript函数返回null

带有fetch的Javascript函数返回null,javascript,arrays,json,foreach,Javascript,Arrays,Json,Foreach,我有一段代码,在某一点上,我调用一个函数,该函数正在执行一个获取,并对获取的结果进行一些操作,然后返回所有内容。我的问题是fetch工作正常,该函数中的每个值都可以从同一个函数中正确检索,但是当我从父函数(我调用的函数)检索这些值时,似乎完全跳过了该调用。这是我的密码: function returnMyFetch(){ //doStuff var finalResultFromFetch = []; var array = [] myFunctionThatDo

我有一段代码,在某一点上,我调用一个函数,该函数正在执行一个获取,并对获取的结果进行一些操作,然后返回所有内容。我的问题是fetch工作正常,该函数中的每个值都可以从同一个函数中正确检索,但是当我从父函数(我调用的函数)检索这些值时,似乎完全跳过了该调用。这是我的密码:

function returnMyFetch(){
    //doStuff
    var finalResultFromFetch = [];
    var array = []
    myFunctionThatDoesFetch(finalResultFromFetch, array);
    console.log(finalResultFromFetch);
    console.log(array)
}
在这种情况下,console.log都在打印一个空数组。这是具有fetch的函数:

async function myFunctionThatDoesFetch(finalResultFromFetch, array){
    return fetch('https://blahblahblah')
    .then(res => res.json())
    .then(function(result){
        //doStuff with finalResultFromFetch
        for(var i=0; i< result.length; i++){
            finalResultFromFetch.push(result[i]);        
              }
         })
console.log(finalResultFromFetch);
return finalResultFromFetch;
}
异步函数myFunctionThatDoesFetch(finalResultFromFetch,数组){
返回获取('https://blahblahblah')
.then(res=>res.json())
.然后(函数(结果){
//带有finalResultFromFetch的doStuff
对于(变量i=0;i
在本例中,console.log返回一个包含我的值的数组。 如果我分块执行相同的代码,我也可以在returnMyFetch函数上得到相同的结果,但是如果代码一起执行,我就看不到不执行Fetch的MyFunction返回的结果。 我错在哪里? 感谢您

myFunctionThatDoesFetch(finalResultFromFetch,array)->
等待执行蚀刻的MyFunction(finalResultFromFetch,数组)
并且必须使包含函数
异步
。或者
myFunctionThatDoesFetch(finalResultFromFetch,array)。然后(data=>{/*将此行后面的代码移到这里*/})