如何对实现一维数组转化为二维数组

本文涉及的产品
资源编排,不限时长
无影云电脑个人版,1个月黄金款+200核时
无影云电脑企业版,4核8GB 120小时 1个月
简介: 本文章实现了数组之间的转换

问题

用 js 实现一维数组转化为二维数组

分析

1. for 循环 + slice 方法

使用 JavaScript 的循环和 slice 方法来将数组 [160, 20, 179, 10, -170, -20] 转化为 [[160, 20], [179, 10], [-170, -20]]。以下是一个示例代码:

const arr = [160, 20, 179, 10, -170, -20];
const result = [];

for (let i = 0; i < arr.length; i += 2) {
   
  result.push(arr.slice(i, i + 2));
}

console.log(result); // 输出转化后的数组

在上述代码中,通过循环遍历原始数组,每次取两个元素并使用 slice 方法将其组成一个新的子数组,然后将子数组添加到结果数组中。

最后,通过 console.log 输出转化后的数组 result。

2. flatMap 方法

用 flatMap 方法来简化将数组 [160, 20, 179, 10, -170, -20] 转换为 [[160, 20], [179, 10], [-170, -20]] 的过程。以下是使用 flatMap 的示例代码:

const arr = [160, 20, 179, 10, -170, -20];
const result = arr.flatMap((value, index, array) => {
   
  if (index % 2 === 0) {
   
    return [array.slice(index, index + 2)];
  }
  return [];
});

console.log(result); // 输出转化后的数组

在上述代码中,我们使用 flatMap 方法来遍历原始数组 arr。在回调函数中,我们检查当前元素的索引是否为偶数,如果是,则使用 slice 方法将当前元素和下一个元素组成一个子数组,并返回该子数组。如果索引为奇数,则返回一个空数组。

最后,通过 console.log 输出转化后的数组 result。

相关文章
|
6月前
leetcode-2022:将一维数组转变成二维数组
leetcode-2022:将一维数组转变成二维数组
46 1
【一维数组和二维数组】
【一维数组和二维数组】
55 0
|
6月前
|
存储 C语言
二维数组的使用
这篇内容介绍了二维数组的概念,它是将一维数组作为元素构成的数组,也称为多维数组。文章详细讲解了如何创建二维数组,包括指定行数和列数,并展示了不同类型的初始化方式:不完全初始化(剩余元素设为0)和完全初始化。此外,还提到了按照行初始化的语法。内容中强调了C语言中二维数组的行和列都从0开始计数,并通过示例解释了如何访问和输出数组元素。最后,讨论了二维数组在内存中的存储方式,它是一维数组数组,元素在内存中是连续存放的。
50 0
|
6月前
|
机器学习/深度学习 算法 前端开发
将一维数组转变成二维数组
将一维数组转变成二维数组
47 0
|
6月前
|
存储 算法 搜索推荐
16二维数组
16二维数组
45 0
|
6月前
|
存储 算法 C++
C++013-C++二维数组
C++013-C++二维数组
C++013-C++二维数组
|
11月前
|
存储
二维数组剖析
二维数组剖析
50 0
|
6月前
|
C语言
二维数组的知识
二维数组的知识
二维数组的大小
int a[ 3 ] [ 4 ] 数组类型:int [ 3 ] [ 4 ],去掉变量名,就是变量的类型。这就是3行4列共12个int 类型元素的二维数组类型。
161 0
|
存储 编译器 C语言
一维数组与二维数组———详细解读及一些注意事项
一维数组与二维数组———详细解读及一些注意事项
119 0