0

0

如何将一维数组按高度分组转换为二维数组?

聖光之護

聖光之護

发布时间:2025-02-25 17:42:12

|

1134人浏览过

|

来源于php中文网

原创

如何将一维数组按高度分组转换为二维数组?

高效实现一维数组到二维数组的转换:按高度分组

本文介绍一种高效的方法,将一维数组转换为二维数组,其中二维数组的每个子数组包含高度相同的元素。

我们使用reduce方法实现这一转换:

const groupByHeight = (list) => list.reduce((res, v) => {
  const lastGroup = res[res.length - 1];
  if (lastGroup && lastGroup[0].height === v.height) {
    lastGroup.push({ width: v.width, height: v.height });
  } else {
    res.push([{ width: v.width, height: v.height }]);
  }
  return res;
}, []);

此函数迭代输入数组list。如果当前元素的高度与最后一个分组中的元素高度相同,则将其添加到该分组。否则,创建一个新的分组并添加当前元素。

多面-AI面试
多面-AI面试

猎聘推出的AI面试平台

下载

使用方法如下:

const data = [
  { id: 1, width: 500, height: 1000 },
  { id: 2, width: 500, height: 1000 },
  { id: 3, width: 500, height: 500 },
  { id: 4, width: 500, height: 500 },
  { id: 5, width: 500, height: 1000 },
  { id: 6, width: 500, height: 1000 },
  { id: 7, width: 500, height: 500 },
  { id: 8, width: 500, height: 500 },
  { id: 9, width: 500, height: 500 },
  { id: 10, width: 500, height: 500 },
];

const data2 = groupByHeight(data);
console.log(data2);

这将生成一个二维数组,其中每个子数组包含高度相同的元素,从而实现了高效的数组转换。 此方法比原文中的方法更简洁,并且避免了不必要的idslot属性的创建。

相关专题

更多
虚拟号码教程汇总
虚拟号码教程汇总

本专题整合了虚拟号码接收验证码相关教程,阅读下面的文章了解更多详细操作。

29

2025.12.25

错误代码dns_probe_possible
错误代码dns_probe_possible

本专题整合了电脑无法打开网页显示错误代码dns_probe_possible解决方法,阅读专题下面的文章了解更多处理方案。

20

2025.12.25

网页undefined啥意思
网页undefined啥意思

本专题整合了undefined相关内容,阅读下面的文章了解更多详细内容。后续继续更新。

37

2025.12.25

word转换成ppt教程大全
word转换成ppt教程大全

本专题整合了word转换成ppt教程,阅读专题下面的文章了解更多详细操作。

6

2025.12.25

msvcp140.dll丢失相关教程
msvcp140.dll丢失相关教程

本专题整合了msvcp140.dll丢失相关解决方法,阅读专题下面的文章了解更多详细操作。

2

2025.12.25

笔记本电脑卡反应很慢处理方法汇总
笔记本电脑卡反应很慢处理方法汇总

本专题整合了笔记本电脑卡反应慢解决方法,阅读专题下面的文章了解更多详细内容。

6

2025.12.25

微信调黑色模式教程
微信调黑色模式教程

本专题整合了微信调黑色模式教程,阅读下面的文章了解更多详细内容。

5

2025.12.25

ps入门教程
ps入门教程

本专题整合了ps相关教程,阅读下面的文章了解更多详细内容。

4

2025.12.25

苹果官网入口直接访问
苹果官网入口直接访问

苹果官网直接访问入口是https://www.apple.com/cn/,该页面具备0.8秒首屏渲染、HTTP/3与Brotli加速、WebP+AVIF双格式图片、免登录浏览全参数等特性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

218

2025.12.24

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
誉天教育RHCE视频教程
誉天教育RHCE视频教程

共9课时 | 1.4万人学习

尚观Linux RHCE视频教程(二)
尚观Linux RHCE视频教程(二)

共34课时 | 5.6万人学习

尚观RHCE视频教程(一)
尚观RHCE视频教程(一)

共28课时 | 4.7万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号