vue数组根据某些条件进行二次切割

原本的一个一维数组首先

1.根据depnm和bed的不同会分成不同的数组

2.在条件1的基础上分割出来的数组如果存在里面有isBgn==1的会进行二次分割

比如原数组是[{depnm:1,bed:2,isBgn:0},{}……]

根据条件一会组成一个二维数组得到

[

[①depnm值一致的一个一维数组],

[②bed值一致的一个一维数组],

[③另一个depnm值一致的一个一维数组],//即存在有多种depnm的情况

]

根据条件2在1的基础上二次切割会得到

[

[下标为0~isBgn==1的下标的值的前一个值],//①depnm值一致的一个一维数组

[下标为isBgn==1的下标的值~最后一值],//①depnm值一致的一个一维数组

[②bed值一致的一个一维数组],

[③另一个depnm值一致的一个一维数组],

]

比如①depnm值一致的一个一维数组有10个值,这个数组里面第三个值是isBgn==1,那这个数组会分成两个数组,第一个数组是0-2,第二个数组是3-10

  let obj = {}; // 初始化一个空对象来存储分组后的数据res.data.data.forEach((item) => {// 使用depnm和bed两个字段来构建一个唯一的keyconst key = `${item['depnm']}-${item['bed']}`;// 如果这个key在obj中已经存在,则把当前item添加到对应的数组中// 如果不存在,则创建一个新的数组,并把当前item添加到这个数组中obj[key] ? obj[key].push(item) : (obj[key] = [item]);});// 将obj的values(即分组后的数组)转换为数组,并赋值给this.info// this.info = Object.values(obj);this.info=[]Object.values(obj).forEach(v=>{let indexArr=[0]let result=[]v.forEach((item,index)=>{if(item.isBgn==1&&index!==0){indexArr.push(index)}})indexArr.push(v.length)// 遍历下标数组,根据相邻下标切割原数组for (let i = 0; i < indexArr.length - 1; i++) {let start = indexArr[i];let end = indexArr[i + 1];result.push(v.slice(start, end));}this.info.push(...result)})

res.data.data是最原始的一维数组

Object.values(obj)是条件1得出的二维数组

this.info就是最后条件2得出的二维数组

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1551427.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

选择国企eHR人事管理系统的时候,应该注意什么?

近年来&#xff0c;中国正步入高速发展的黄金时期&#xff0c;国有企业&#xff08;国企&#xff09;在追求效率和管理水平提升方面迈出了重要步伐。为了进一步实现数字化、流程化和科学化管理&#xff0c;越来越多的国企选择引进eHR&#xff08;电子人力资源管理&#xff09;系…

【Diffusion分割】MedSegDiff-v2:Diffusion模型进行医学图像分割

MedSegDiff-V2: Diffusion-Based Medical Image Segmentation with Transformer 摘要&#xff1a; 最近的研究揭示了 DPM 在医学图像分析领域的实用性&#xff0c;医学图像分割模型在各种任务中表现出的出色性能就证明了这一点。尽管这些模型最初是以 UNet 架构为基础的&…

opencv实战项目(三十):使用傅里叶变换进行图像边缘检测

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一&#xff0c;什么是傅立叶变换&#xff1f;二&#xff0c;图像处理中的傅立叶变换&#xff1a;三&#xff0c;傅里叶变换进行边缘检测&#xff1a; 一&#xff0c…

13个大V出文需要准确把握的重要因素

推文作为全球最大的社交平台之一&#xff0c;吸引了很多大V&#xff08;即具有巨大粉丝团的影响力和的账户&#xff09;的关注。那些大V常常运用推文发布相关各种各样热点的营销推广信息&#xff0c;以吸引更多人的关注参与。推文的发布时间段是V在宣传推广过程中需要准确把握的…

【真实访问】那些选择土木专业的学生,后来怎么样了?

“你会让孩子报土木专业吗&#xff1f;” 7月15日&#xff0c;澎湃新闻在微博上发起线上调研&#xff0c;截至16日12时&#xff0c;8000多人参与了投票&#xff0c;结果显示近7000人选择“不会&#xff0c;天坑专业”。短短几年时间&#xff0c;土木工程专业的报考从“香饽饽”…

CAN总线的错误类型

前言 CAN总线的错误类型主要包括&#xff1a;位错误、填充错误、格式错误、ACK错误和CRC错误。这里一定要做好CAN总线的错误类型、错误帧类型、节点状态之间的区别。 错误类型是帧传输出错的原因类型&#xff1b;错误帧类型&#xff08;主动错误帧、被动错误帧&#xff09;是帧…

基于IntraWeb的数据表格的多选实现

基于IntraWeb的数据表格的多选实现 既可以单条操作&#xff0c;也可以多选操作。 delphi源代码。 BS开发Web网站开发&#xff0c;不需要安装服务器&#xff0c;Apache和IIS都不需要&#xff0c;自带企业级服务器。 运行exe服务器就架好了&#xff0c;直接打开手机浏览器或者…

Zombie Slaughter 写实30个僵尸丧尸带动画角色模型

包含30个操纵的僵尸(15个男性和15个女性角色)+动画 所有僵尸都有分离的身体部位,以获得更好的射击/砍杀体验:) PBR材质包含4种纹理(基色、法线、粗糙度、AO),分辨率为4096x4096。 动画包括: -闲置 -步行 - 走回去 - 向右转 - 向左转 -担心 -尖叫 - 走路惹 -快跑 -阿格罗…

人工智能与伦理:如何确保AI应用中的隐私保护

引言 随着人工智能技术的飞速发展&#xff0c;AI已经渗透到我们生活的各个领域&#xff0c;从智能助手到个性化推荐系统&#xff0c;再到医疗诊断和金融服务&#xff0c;人工智能正在为我们带来前所未有的便利。然而&#xff0c;伴随着AI的广泛应用&#xff0c;隐私保护问题日益…

优选驾考系统小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;驾校管理&#xff0c;驾考文章管理&#xff0c;驾照类型管理&#xff0c;报名入口管理&#xff0c;学员报名管理&#xff0c;练车预约管理&#xff0c;考试场地管理 微信端账号功能包括&#xff1a;系统…

加油卡APP系统:省时、优惠、安心!

在汽车加油的刚需下&#xff0c;如何更加优惠的“加油”成为了大众关心的重点&#xff0c;而以优惠为主的加油卡系统也成为了大众的主要选择。 加油卡系统是汽车加油线上的服务系统&#xff0c;拥有全国各地的加油站权限&#xff0c;能够让车主在手机上进行充值&#xff0c;同…

VMware虚拟机连接公网,和WindTerm

一、项目名称 vmware虚拟机连接公网和windterm 二、项目背景 需求1&#xff1a;windows物理机&#xff0c;安装了vmware虚拟机&#xff0c;需要访问公网资源&#xff0c;比如云服务商的yum仓库&#xff0c;国内镜像加速站的容器镜像&#xff0c;http/https资源。 需求2&#xf…

【git】git分支之谜-十分钟给你讲透彻

这里写自定义目录标题 引子分支的直观模型在 git 中&#xff0c;分支是完整的提交记录分支用commit ID存储人们的直觉通常并没有那么错rebase 使用“直观”的分支概念merge也使用“直观”的分支概念github pull request 也使用直观的想法直觉很好&#xff0c;但它也有一些局限性…

前端编程艺术(1)---HTML

目录 1.HTML 2.注释 3.标题标签 4.段落标签 5.换行与水平分隔线 6.文本格式化标签 7.图像标签和属性 8.超链接 8.列表标签 9.表格标签 10.表单标签 11.HTML5 1.HTML HTML&#xff08;HyperText Markup Language&#xff0c;超文本标记语言&#xff09;是一种用于创建…

【JAVA开源】基于Vue和SpringBoot的新闻推荐系统

本文项目编号 T 056 &#xff0c;文末自助获取源码 \color{red}{T056&#xff0c;文末自助获取源码} T056&#xff0c;文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 查…

Node-RED系列教程-23node-red获取OPCDAServer数据(DCOM配置)

准备了一个干净的windows 2016虚拟机: administrator wong@123 以管理员身份进入系统: 准备好如下软件: 使用的nodejs版本为: 设置淘宝镜像源: npm config set registry https://registry.npmmirror.com 安装nodered: npm install -g --unsafe-perm node-red@2.2.2

如何组织鼠标的默认的事件

如何组织鼠标的默认的事件 我原先的代码是 dblclick"checkNode(data)"设置了一个双击的事件&#xff0c;我如果双击的话就会导致这个内容被选中。 选中内容的同时会触发浏览器默认的操作&#xff0c;导致出现复制的框这些东西。 解决的方法。加一句。 mousedown.pr…

Power apps:一次提交多项申请

1、添加一个Form&#xff0c;导入sharepoint列表&#xff0c;添加确认&#xff0c;继续&#xff0c;取消按钮 2、在页面的onvisible属性中添加 Set(applynumber,Last(付款申请表).申请编号1); #定义一个申请编号变量&#xff0c;每次申请&#xff0c;就将列表最后一个…

2024上海网站建设公司哪家比较好TOP3

判断一家网建公司的好坏&#xff0c;第一是看公司背景&#xff0c;包括成立时间&#xff0c;工商注册信息等&#xff0c;第二可以去看看建站公司做的案例&#xff0c;例如&#xff0c;网站开发、设计、引流等等的以往案例&#xff0c;了解清楚具体的业务流程。 一、公司背景 …

让小脚本成为自己高效测试的工具

测试中会遇到的工具 软件测试如果仅仅靠手工去执行会发现在很多地方力不从心&#xff0c;虽然市面上已经有大牛开源了一些测试工具可以供我们使用但是在一些公司特有的业务方面则需要我们借助开源或重新做一个自己的测试工具。 测试常用的开源工具 死链接检测工具 Xenu home…