数组是JavaScript编程中最常用的结构之一,这也是为什么了解它的内置方法很重要。
在本文中,我们研究一下如何在 JS 中将数组拆分为n个大小的块。
具体来说,主要研究两种方法:
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));
运行结果:
[[ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ], [ 10 ]]
在上面的代码中,我们通过遍历数组并按每个chunkSize对其进行切片,将arr分解成大小为3的小块。在最后一次迭代中,只剩下一个元素(10),所以它自己就组成一个块。
即使splice()方法看起来与slice()方法相似,但其用法和副作用却大不相同。我们仔细来看看:
// splice 做以下两件事:
// 1. 删除从 startIdx 开始的 deleteCount 元素
// 2. 将提供的新元素(newElem1, newElem2…)插入到myArray中,以索引startIdx开始
// 该方法的返回值是一个包含所有已删除元素的数组
myArray.splice(startIdx, deleteCount, newElem1, newElem2...)
let arrTest = [2, 3, 1, 4]
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 = [1, 2, 3, 4, 5, 6, 7, 8];
console.log(spliceIntoChunks(arr, 2));
运行结果:
[ [ 1, 2 ], [ 3, 4 ], [ 5, 6 ], [ 7, 8 ] ]
在这里,我们使用while循环遍历数组。在每次迭代中,我们执行拼接操作,并将每个块添加到结果数组中,直到原始数组中不再有其他元素为止(arr.length> 0)。
需要注意的非常重要的一点是splice()会更改原始数组。如slice()创建原始数组的副本,因此原始数组不会有任何更改。
在本文中,我们介绍了在 JS 中将列表分割为多个块的几种简单方法。在此过程中,我们学习了如何使用几个内置的数组方法,如slice()和splice()。
如果只看、大V、直播红人的造假行为,只能看到简单的操作,比如刷阅读量,刷点赞,直播通过机器或者水军制造假观众。深层次上,我们需要从数据造假黑产业的技术内核出发,回溯产业链的各个环节,才能透过表面看到数据造假给行业带来多大的影响和破坏力。 数据造假不仅发生在网红经济,也肆虐于游戏、、互联网金融等...
传统行业一般通过地图、独立、小程序和4种方法进行拓展客户。传统行业拓展渠道很难,即使有一小部分拓展成功的传统,也是一路跌跌撞撞被骗了无数次,兜兜转转绕了无数圈,才能拨开重重迷雾,真正建立起来网络获客渠道。一路上弯路很多,忽悠的人也很多,因为个人也是这样一路走过来的。过时的推广方法前几天忽然有人加好友...
企业网站不仅需要SEO或竞价,当然全网推广方法也需要。一.企业官方自媒体微博/博客通过博客或微博直接引入,可以直接带来潜在的客户,省去了用户搜索查找的麻烦,可以方便的增加对应的网站 企业网站不仅需要SEO或竞价,当然全网推广方法也需要。 一.企业官方自媒体微博/博客 通过博客或微博直接引入,可...
我们都知道,流量是电商的命脉,没有流量的淘宝店铺就相当于没有人流的超市。产品再多,也无人购买,也更没有销售额的产生。正是因为如此,流量是我们卖家一直所追求的,只有有了流量我们的店铺 我们都知道,流量是电商的命脉,没有流量的淘宝店铺就相当于没有人流的超市。产品再多,也无人购买,也更没有销售额的产生。...
闲鱼是阿里巴巴旗下闲置交易平台。使用淘宝或支付宝账户登录,无需经过复杂的开店流程,即可达成包括一键转卖个人淘宝账号中“已买到宝贝”、自主手机拍照上传二手闲置物品、以及在线交易等诸多 闲鱼是阿里巴巴旗下闲置交易平台。使用淘宝或支付宝账户登录,无需经过复杂的开店流程,即可达成包括一键转卖个人淘宝账号中...
对于小孩子来讲一年中最为喜爱的节日除了寒暑假就是春节了,毕竟过年长辈给的压岁钱可以说是一笔不小的收入了,但由于压岁钱也有个上限,所以压岁钱可以拿到几岁成了孩子们比较关心的,下面小编就和大家一起看看压岁钱多大不能拿了。压岁 对于小孩子来讲一年中最为喜爱的节日除了寒暑假就是春节了,毕竟过年长辈给的压岁...
红薯是秋季比较常见的一种食物,它的吃法比较多,可以蒸着吃,可以煮着吃,还可以烤着吃等,烤红薯吃起来会比较香,并且饱腹感会比较强,深受人们喜欢。烤红薯最好现烤现吃,这样味道最好,也可以放到第二天,但是要保持得当,不然就会变 红薯是秋季比较常见的一种食物,它的吃法比较多,可以蒸着吃,可以煮着吃,还可以...
iPhone14双十一官网一般是没有优惠的,但其他电商平台是会有折扣的,每年都是如此,更何况今年的iPhone14销量并不是很好,所以想入手新机的朋友们可以期待双十一的折扣哦!iPhone14双十一官网会降价吗不会,官网 iPhone14双十一官网一般是没有优惠的,但其他电商平台是会有折扣的,每年...
口碑最好十大防晒伞排名 在导致皮肤老化的外源性因素中,紫外线是导致皮肤老化的最大原因,因此防晒霜更为重要。每个季节都要注意防晒霜。现在市场上有很多种防晒霜,那么哪种品牌的防晒霜最好?下面将列出世界十大防晒霜。名单上有什么? 全球防晒霜排行榜十强? Cosme Decorte多重防晒乳...
茭白是秋季比较常见的一种蔬菜,它的吃法比较多,味道鲜美,营养价值高,深受人们喜欢。茭白吃之前是需要处理干净的,通常要剥皮,它外面有一层绿色的皮,这个是比较硬的,是不能吃的,剥开看到里面白色的柔软部位就可以了。茭白剥皮剥到 茭白是秋季比较常见的一种蔬菜,它的吃法比较多,味道鲜美,营养价值高,深受人们...
购置税减半政策是今年下半年推出的,已经有不少人都了解过了,但是近期打算买车的朋友们,可能还是不太了解购置税减半的意思。那么,购置税减半是直接优惠还是买车后返?一起来看看久久派带来的详细介绍吧!购置税减半30万是指导价还是 购置税减半政策是今年下半年推出的,已经有不少人都了解过了,但是近期打算买车的...
能贷30年绝不贷20年的原因主要是因为利率比较低,这种贷款相对于来说比较划算,对于月供压力也会小很多。那么,30年房贷提前几年还清最划算呢?让我们一起来看看久久派带来的详细介绍吧!能贷30年绝不贷20年为什么能贷30年绝 能贷30年绝不贷20年的原因主要是因为利率比较低,这种贷款相对于来说比较划算...
窦性心律不齐并不会影响入职或者公务员体检的,这个是属于一个比较心率问题,会在心电图时反映出来,平时需要多观察,一次体检证明不了什么,有可能是紧张导致,不用太放在心上。窦性心律不齐公务员体检能过关吗一般情况下,窦性心律不 窦性心律不齐并不会影响入职或者公务员体检的,这个是属于一个比较心率问题,会在心...
对于短发的女生来讲,最为尴尬的就是留长期,也正是因为这样很多人为了解决这种尴尬纷纷会购买假发片,来使头发变长,所以女生短发用假发片买多长的合适成了大家最为关注的,下面小编就和大家一起看看短发怎么戴长假发片。女生短发用假发 对于短发的女生来讲,最为尴尬的就是留长期,也正是因为这样很多人为了解决这种尴...
龙眼保存方法和注意事项,龙眼怎么保存。小编带你了解更多相关信息。 1、放冰箱。可以放4-5度的常温,因为龙眼属于热带水果,不太适应放冰箱里。如果无法制造那么低的温度,那可以选择放冰箱,放最底层的槽里,用保鲜膜把龙眼被包住,以免水分的流失。并且放冰箱里的龙眼,尽快3天内吃完,口感几乎还保留着,时...