Javascript 我有一个数组,里面有数组,这个数组只有一个值。我想让它变得简单,并转换为数组

Javascript 我有一个数组,里面有数组,这个数组只有一个值。我想让它变得简单,并转换为数组,javascript,arrays,Javascript,Arrays,我试图将[arr1,arr2,arr3]转换为更简化的形式[1,2,3],其中arr1,arr2和arr3分别是包含值1,2和3的数组 特别是,我通过API获取JSON数据,推送值并创建数组来存储它们,如下所示: let parentFolderids = []; // store their names within a local array for(let i = 0; i < response.data.data.length; i++) { //const object

我试图将[arr1,arr2,arr3]转换为更简化的形式[1,2,3],其中arr1,arr2和arr3分别是包含值1,2和3的数组

特别是,我通过API获取JSON数据,推送值并创建数组来存储它们,如下所示:

let parentFolderids = []; // store their names within a local array
for(let i = 0; i < response.data.data.length; i++) {
    //const object = response.data.data[i];
    //console.log(object.parentIds[0])
    parentFolderids.push(response.data.data[i].parentIds);
}
比如说,这样做的结果是parentfolderId是[12]、[33]、[22]


我想把它转换成简单的[12,33,22]。我该怎么做呢?

这里有很多不同的方法:

使用仅提取每个内部数组的第一个元素;适用于所有现代浏览器:

常量数组=[[12]、[33]、[22]、[77、88、99]; 常量flat=array.map x=>x[0];
控制台。对数平面;您可以使用array.flat或[].concat…数组吗?我不确定我是否了解API的所有细节等等。这个问题可以只给出一个数组x,如何得到y?这是我试过的…,对吗?可以显示原始的JSON响应吗?谢谢。我想我只是通过添加.toString parentFolderId.pushresponse.data.data[I].parentId.toString;感谢ggorlen提供的帮助:polyfill of[].concat…一个扩展语法是Array.prototype.concat.apply[],任何涉及x[0]的解决方案(其中x是数组)也必须检查x.length>0,否则未定义的泄漏会进入您的program@user633183:OP指定每个内部数组只有一个元素。如果这个假设实际上并不总是正确的,那么它们可能比数组中存在一些未定义的值有更大的问题。特别是,我上面给出的各种解决方案将不再都是等价的,OP需要决定如何处理内部数组包含多个或少个元素的情况。在某些情况下,未定义的占位符元素实际上可能正是需要的,但是如果没有更多的上下文,就不可能确定这里的情况是否如此。我并不是说你的答案是错误的,我只是提醒这些程序的用户,在某些情况下,他们将生成未定义的占位符^^^,为了一致性,我认为对于数组的let x。。。应为数组的常数x。。。。例如,仅当变量需要可变时才使用let,就像在您的let i。。。i++示例。