当前位置:首页 > 知识分享 > 正文内容

今日知识分享分割数组的方法有哪些

3年前 (2023-05-12)知识分享132

数组是JavaScript编程中最常用的结构之一,这也是为什么了解它的内置方法很重要。

在本文中,我们研究一下如何在 JS 中将数组拆分为n个大小的块。

具体来说,主要研究两种方法:

  1. 使用slice()方法和 for 循环
  2. 用splice()方法和 while 循环

使用 slice() 方法将数组分割成偶数块

slice()方法是提取数组块,或者将其切成块的最简单方法:

slice(start, end) 方法返回一个新的数组对象,这一对象是一个由 begin 和 end 决定的原数组的浅拷贝(包括 begin,不包括end)。原始数组不会被改变。

注意:start和end都可以是负整数,这仅表示它们是从数组末尾枚举的。-1是数组的最后一个元素,-2是倒数第二个,依此类推…

因此,要将列表或数组分割成偶数块,我们使用slice()方法

function sliceIntoChunks(arr, chunkSize) {
    const res = [];
    for (let i = 0; i < arr.length; i += chunkSize) {
        const chunk = arr.slice(i, i + chunkSize);
        res.push(chunk);
    }
    return res;
}

const arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
console.log(sliceIntoChunks(arr, 3));

运行结果:

[[ 123 ], [ 456 ], [ 789 ], [ 10 ]]

在上面的代码中,我们通过遍历数组并按每个chunkSize对其进行切片,将arr分解成大小为3的小块。在最后一次迭代中,只剩下一个元素(10),所以它自己就组成一个块。

使用 splice() 方法将数组分割成偶数块

即使splice()方法看起来与slice()方法相似,但其用法和副作用却大不相同。我们仔细来看看:

// splice 做以下两件事:
// 1. 删除从 startIdx 开始的 deleteCount 元素
// 2. 将提供的新元素(newElem1, newElem2…)插入到myArray中,以索引startIdx开始
// 该方法的返回值是一个包含所有已删除元素的数组

myArray.splice(startIdx, deleteCount, newElem1, newElem2...)

let arrTest = [2314]
let chunk = arrTest.splice(0,2)
console.log(chunk) // [2, 3]
console.log(arrTest) // [1, 4]

我们通过一个代码示例来实际了解这一点:

function spliceIntoChunks(arr, chunkSize{
    const res = [];
    while (arr.length > 0) {
        const chunk = arr.splice(0, chunkSize);
        res.push(chunk);
    }
    return res;
}

const arr = [12345678];
console.log(spliceIntoChunks(arr, 2));

运行结果:

[ [ 12 ], [ 34 ], [ 56 ], [ 78 ] ]

在这里,我们使用while循环遍历数组。在每次迭代中,我们执行拼接操作,并将每个块添加到结果数组中,直到原始数组中不再有其他元素为止(arr.length> 0)。

需要注意的非常重要的一点是splice()会更改原始数组。如slice()创建原始数组的副本,因此原始数组不会有任何更改。

总结

在本文中,我们介绍了在 JS 中将列表分割为多个块的几种简单方法。在此过程中,我们学习了如何使用几个内置的数组方法,如slice()和splice()。

扫描二维码推送至手机访问。

版权声明:本文由阿龙玩站网发布,如需转载请注明出处。

本文链接:https://www.longge2021.cn/zhideyikan/25164.html

分享给朋友:

“今日知识分享分割数组的方法有哪些” 的相关文章

玩具是孩子童年的快乐,快乐童年离不开玩具

玩具是孩子童年的快乐,快乐童年离不开玩具

1 宝宝出生后,对周围的环境一无所知。他还不能自主地控制身体和思想,他不会说话表达。所以对他来说,只有玩耍才能使他完全忘我地把注意力集中到环境中的他感兴趣的事物上,并运用自己的肢体、感官、大脑去探索它,不断重复,直到他完全掌握才转向下一个目标。渐渐地,他的运动能力增强了,感受能力丰富敏锐了,思维能...

如何用音乐治疗抑郁,抑郁症可以用音乐治疗吗

如何用音乐治疗抑郁,抑郁症可以用音乐治疗吗

抑郁症是一种威胁人类心理健康的精神疾病,专家对于它的研究也是在不停地进行。目前对于它的治疗也是有很多的方法,如药物治疗、物理治疗、心理治疗等,今天给大家介绍一种治疗抑郁症的新疗法---音乐疗法。下面就了解一下音乐治疗抑郁症。 1 在心灵感到空虚时,可贝多芬《命运》,博克里尼大提琴《A大调第六奏呜曲...

普通人成功创业的关键因素

普通人成功创业的关键因素

常言道,九死一生。创业是一项高风险不确定的事情,需要特别谨慎才行。虽然创业成功,会带来巨大的回报,但是我们也千万不能忽视创业的巨大风险,尤其对于普通人来说更是如此。因为普通人试错成本太高了,败则死无葬身之地,这可不是吓唬在看的诸位。 大家或许看过这种新闻报道,某某某看中一个项目,觉得能赚大钱,...

今天面试了一位00后应届毕业女生

今天面试了一位00后应届毕业女生

今天面试了一位00后应届毕业女生,感觉真的和以前的90后求职者不一样,进来办公室就把包往桌子上一丢,用手挽了挽头发,轻松的说了句:“不好意思,来晚了,我们可以开始了。”我颇感诧异,这气势上就给人一种统治力和压迫感,高挑的身材,带着口罩,双眼化了妆,看起来颜值很高。 她把简历放在桌子上,用手拍了...

钻石夺宝201必中水晶吗(荣耀水晶抽361次多少钱)

钻石夺宝201必中水晶吗(荣耀水晶抽361次多少钱)

前言: 各位小伙伴大家好,这里是不仅游戏打得6,长得还很帅的熊猫哥哥~ 王者荣耀中最有价值的游戏道具之一就是荣耀水晶,玩家们可以使用荣耀水晶来兑换特定商店中的皮肤和英雄,例如武则天、小乔-天鹅之梦等等,有很多高人气皮肤。 荣耀水晶需要通过积分夺宝来获取,非常看运气,很多手气...

如何建立淘宝网店(如何开网店淘宝步骤)

如何建立淘宝网店(如何开网店淘宝步骤)

想要成为淘宝店铺的商家,首先要做的就是拥有自己的淘宝店铺,这就需要进行店铺的注册,下面学得起课堂就详细的为大家介绍淘宝如何注册网店,淘宝注册网店的详细流程。1、淘宝账号申请还没有申 想要成为淘宝店铺的商家,首先要做的就是拥有自己的淘宝店铺,这就需要进行店铺的注册,下面学得起课堂就详细的为大家介绍淘...

吸引人的推广标题(最容易上热门的标题)

吸引人的推广标题(最容易上热门的标题)

谁用谁火!1.每个帅哥都说我好看,我就开播了2.宝,假装着迷一下,可以吗?3.美女营业请查看。4.少爷,您的夫人正在直播5.我没有装,我只是厚着脸皮6.我,一个比奥利奥 谁用谁火! 1. 每个帅哥都说我好看,我就开播了 2. 宝,假装着迷一下,可以吗? 3. 美女营业请查看。 4. 少爷,...

公众号推广怎么做怎么推广效果好

公众号推广怎么做怎么推广效果好

微信公众号推广不仅仅是简单盲目的做宣传,而是要有效快速的发展微信用户,将微信公众号推广出去。那么微信公众号怎么推广效果好呢?怎样有效的推广公众号?1不用分散精力做多个号。服务号 微信公众号推广不仅仅是简单盲目的做宣传,而是要有效快速的发展微信用户,将微信公众号推广出去。那么微信公众号怎么推广效果好...

猕猴桃孕妇一天吃几个最好(猕猴桃孕妇一天吃5个可以吗)

猕猴桃孕妇一天吃几个最好(猕猴桃孕妇一天吃5个可以吗)

猕猴桃是生活中比较常见的一种水果,它含有多种营养成分,适量食用对身体有一定好处。孕妇也是可以吃猕猴桃的,可以补充维生素以及其他微量元素等,孕妇吃猕猴桃一天吃一两个比较好,不建议一次吃五个。猕猴桃孕妇一天吃几个最好1-2个 猕猴桃是生活中比较常见的一种水果,它含有多种营养成分,适量食用对身体有一定好...

墓碑上刻什么图案好(坟墓立碑有哪些是要注意的)

墓碑上刻什么图案好(坟墓立碑有哪些是要注意的)

扫墓立碑是作为小辈必做的事情之一,这不眼见着就要寒衣节了了,由于很多地方都有立碑这一说到,所以关于立碑墓碑上刻什么图案好一直是大家讨论的焦点,下面小编就和大家一起看看。墓碑上刻什么图案好这要看地方的讲究。墓地是相当有气运 扫墓立碑是作为小辈必做的事情之一,这不眼见着就要寒衣节了了,由于很多地方都有...

三花淡奶是淡奶油吗(三花淡奶成分及配料表)

三花淡奶是淡奶油吗(三花淡奶成分及配料表)

三花淡奶其实并不属于淡奶油,三花淡奶是属于奶水的类型,和淡奶油不是2个概念的。其实,三花淡奶少吃点没关系的,经常吃是容易导致肥胖的。下面,我们来看看久久派带来的三花淡奶成分及配料表吧!三花淡奶是淡奶油吗它不属于淡奶油。淡 三花淡奶其实并不属于淡奶油,三花淡奶是属于奶水的类型,和淡奶油不是2个概念的...

番木瓜是怎样的果树?(木瓜番木瓜怎么辨认)

番木瓜是怎样的果树?(木瓜番木瓜怎么辨认)

木瓜番木瓜怎么辨认 一、木瓜是什么样的果树 1、番木瓜的特征集 木瓜是一个正式的中名。这个名字来自台湾植物名录。因为它原产于热带美国,所以在中国被引进和种植。为了区别于我国制造的玫瑰科木瓜,它被称为木瓜;学名是Carica papaya Linn.,正式命名发表于1753年;别名包括木瓜...

金昌市十大著名旅游景点?(金昌市永昌县旅游景点)

金昌市十大著名旅游景点?(金昌市永昌县旅游景点)

金昌市永昌县旅游景点 金川峡水库-丝绸古道明亮的明珠景点一: 金昌市十大著名旅游景点? 金川峡水库位于盛荣风景区入口处。它以永昌县2000多只春天形成的金川河命名。它不仅是金昌市的一级水源保护区,也是真正的鸟类天堂。湖光倒影,风景迷人,生态优美,魅力无穷!白天鹅、大白鹭、绿头鸭、秋沙...

好莱坞片酬最高的10位明星?(好莱坞巨星男演员排名)

好莱坞片酬最高的10位明星?(好莱坞巨星男演员排名)

好莱坞巨星男演员排名 明星片酬,一直是我们小老百姓关心和好奇的话题。 前几天,全球性感女神斯嘉丽·约翰逊因为《黑寡妇》在流媒体上发布而与迪士尼打官司,引起轩然大波。这件事还没有定论。 好莱坞片酬最高的10位明星? 就在这个摊位上,娱乐圈权威杂志《Variety》总结当前好莱坞影星...

螃蟹蟹黄蒸了以后为什么不是硬的(蟹黄蒸好了不硬怎么回事)

螃蟹蟹黄蒸了以后为什么不是硬的(蟹黄蒸好了不硬怎么回事)

螃蟹是生活中比较常见的一种美食,它的吃法比较多,很多人都会蒸着吃。蒸螃蟹里面的蟹黄都会凝固的,如果蟹黄蒸了以后不是硬的,可能是蒸煮时间不够,或者性腺不够成熟等,这种一般是不建议吃的。螃蟹蟹黄蒸了以后为什么不是硬的1.性腺 螃蟹是生活中比较常见的一种美食,它的吃法比较多,很多人都会蒸着吃。蒸螃蟹里面...