Javascript 合并存储在一个变量中的多个数组

Javascript 合并存储在一个变量中的多个数组,javascript,arrays,json,Javascript,Arrays,Json,我有一个函数,它通过回调一个变量(结果)从多个API获取信息: 就获取数据而言,它似乎运作良好。但是,当要求从每个来源获得2个结果时,数据返回为: [ { id: 'flkr-13545844805', link: 'https://www.flickr.com/photos/28596055@N02/13545844805' }, { id: 'flkr-3474831728', link: 'https://www.flickr.com/photos/9848951@N0

我有一个函数,它通过回调一个变量(结果)从多个API获取信息:

就获取数据而言,它似乎运作良好。但是,当要求从每个来源获得2个结果时,数据返回为:

[ { id: 'flkr-13545844805',
    link: 'https://www.flickr.com/photos/28596055@N02/13545844805' },
  { id: 'flkr-3474831728',
    link: 'https://www.flickr.com/photos/9848951@N06/3474831728' } ]
[ { id: 'us-fRPxHaHwWwk',
    link: 'https://unsplash.com/photos/fRPxHaHwWwk' },
  { id: 'us-JXy99waA3Fo',
    link: 'https://unsplash.com/photos/JXy99waA3Fo' } ]
我已经用javascript查找了合并数组,但我能找到的唯一信息是合并单独的数组,必须至少命名两个数组才能将一个数组推入另一个数组。因为我只有一个数组,所以这些方法不适用


我还尝试使用for-each循环来分隔每个花括号部分,但在将它们放入另一个数组之前,我还需要一种方法来用逗号分隔它们。不确定这里的最佳方法。提前感谢您的帮助

据我所知,您可能需要执行Array.prototype.reduce

const multilevel = [["a","b"], ["c","d"]];

const flat = multilevel.reduce(function(flat_array, current){
    if(Array.isArray(current)) {
        return [...flat_array, ...current];
     } else {
         return [...flat_array, current];
     }
},[]); //["a","b","c","d"]

据我所知,您可能需要执行Array.prototype.reduce

const multilevel = [["a","b"], ["c","d"]];

const flat = multilevel.reduce(function(flat_array, current){
    if(Array.isArray(current)) {
        return [...flat_array, ...current];
     } else {
         return [...flat_array, current];
     }
},[]); //["a","b","c","d"]

我相信正确的术语是“扁平化”而不是“合并”?您已经有一个数组了吗?我正在尝试了解您需要什么。我正在寻找一个包含许多项的单个数组,我想将其用作我的前端应用程序的API端点。看起来扁平化是正确的方法,但是当尝试使用它时,它说扁平化不是一个函数。你写过searchFlickr和searcUnsplash吗?我相信你希望他们回报你的承诺,而不是回电。另外,当使用回调时,你应该尝试让它们成为第一个参数。我相信你所寻找的正确术语是“扁平化”而不是“合并”?您已经有一个数组了吗?我正在尝试了解您需要什么。我正在寻找一个包含许多项的单个数组,我想将其用作我的前端应用程序的API端点。看起来扁平化是正确的方法,但是当尝试使用它时,它说扁平化不是一个函数。你写过searchFlickr和searcUnsplash吗?我相信你希望他们回报你的承诺,而不是回电。另外,当使用回调时,你应该尝试将它们作为第一个参数。我已经用我的代码对此进行了测试,但由于某种原因(它在原始问题中输出了相同的结果)它没有产生所需的结果。编辑:我运行上述代码时没有添加我自己的数据,效果很好,谢谢你提供了正确的答案,只是这里不起作用。如果找不到解决办法,我会马上给你打分是的,实际上我的答案可能不是你需要的。我认为我们的问题比这更深一点。您正在异步收集两个结果,因此您实际上调用了console.log两次,一次调用flickr,一次调用unsplash。我将履行承诺。谢谢你查看我的代码,我已经用我的代码测试过了,但是由于某种原因,它没有产生想要的结果(它在原始问题中输出相同的结果)编辑:我运行了上面的代码,没有添加我自己的数据,它工作得很好,谢谢你提供了正确的答案。这里不工作。如果找不到解决办法,我会马上给你打分是的,实际上我的答案可能不是你需要的。我认为我们的问题比这更深一点。您正在异步收集两个结果,因此您实际上调用了console.log两次,一次调用flickr,一次调用unsplash。我将履行承诺。谢谢你帮我看一下