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

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

2年前 (2023-05-12)知识分享70

数组是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

分享给朋友:

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

数据造假黑产技术帖:如何给微信公众号、微博大V、直播网红刷量

数据造假黑产技术帖:如何给微信公众号、微博大V、直播网红刷量

如果只看、大V、直播红人的造假行为,只能看到简单的操作,比如刷阅读量,刷点赞,直播通过机器或者水军制造假观众。深层次上,我们需要从数据造假黑产业的技术内核出发,回溯产业链的各个环节,才能透过表面看到数据造假给行业带来多大的影响和破坏力。 数据造假不仅发生在网红经济,也肆虐于游戏、、互联网金融等...

转转OPPO A5销量冲进Top10(oppo a5手机配置参数)

转转OPPO A5销量冲进Top10(oppo a5手机配置参数)

你能相信,4年前发布的OPPO A5,在二手市场依旧是“神”一样的存在吗? 近日,转转集团发布的Q1手机行情报告显示,OPPO A5在二手市场继续续写销量神话,单机销量堪称“国产之光”。 对此,转转集团数据部的分析师认为,这不仅与OPPO A5本身的续航、颜值有关,还和OPPO...

三种简单实用的方法(电脑微信怎么双开)

三种简单实用的方法(电脑微信怎么双开)

微信在我们生活中扮演的社交角色是不可替代的,我们在上班、生活等各地都已经离不开他了,电脑端和手机端的互动已是广泛应用于生活中和工作学习生活中。比如互传文件、图片等等这样即方便又节省很多步骤,省时省力。 但是我们很多人在生活中都不止一个微信号,大家都知道电脑端微信只能登录一个微信...

加盟店可靠吗(网上加盟店会不会被骗)

加盟店可靠吗(网上加盟店会不会被骗)

至于为什么加盟骗局加盟骗局这么说?这和加盟的大环境有很大的关系。加盟是由公司先创立实体店,进行营销,达到招商时限后。由公司发布广告吸引加盟商,加盟商考察招商公司后,和招商公司签署加 至于为什么加盟骗局加盟骗局这么说?这和加盟的大环境有很大的关系。加盟是由公司先创立实体店,进行营销,达到招商时限后。...

快手卖货平台怎么收费(快手小店卖一单扣多少钱)

快手卖货平台怎么收费(快手小店卖一单扣多少钱)

快手和抖音是现在发展的比较好的短视频平台,越来越多的商家们开始利用这些平台达到带货的目的,也有很多的达人愿意利用自己的名气来接广告获取佣金,快手直播带货平台怎么收费?一、快手直播带 快手和抖音是现在发展的比较好的短视频平台,越来越多的商家们开始利用这些平台达到带货的目的,也有很多的达人愿意利用自己...

一个营业执照可以开几个店铺(一个营业执照两个店面可以吗)

一个营业执照可以开几个店铺(一个营业执照两个店面可以吗)

一个公司能申请几个天猫旗舰店?虽然距离618还有一个多月,但是很多商家都已经在摩拳擦掌的准备了,还有很多已经有了天猫店并发展的不错,想要开设第二家或第三家店铺的商家,但是开设多家天 一个公司能申请几个天猫旗舰店?虽然距离618还有一个多月,但是很多商家都已经在摩拳擦掌的准备了,还有很多已经有了天猫...

如何做好互联网营销方案(做互联网营销方案的10大步骤)

如何做好互联网营销方案(做互联网营销方案的10大步骤)

营销策划是每一个策划人员必须要面对的问题,要想做出一个优秀的策划案必须要深入其中,在项目的实际背景之下,充分地与市场接轨,实现目标群体的终极目标。做任何事情都会有规律和方法可循,做 营销策划是每一个策划人员必须要面对的问题,要想做出一个优秀的策划案必须要深入其中,在项目的实际背景之下,充分地...

马云近几天出什么事了新闻(马云移民的真实原因)

马云近几天出什么事了新闻(马云移民的真实原因)

对于大佬们的一举一动,一直以来都备受热议,如今马云和刘强东等人的套现离场,更是让很多人议论不已,他们为什么要套现选择移居国外生活呢?对于这种现象,网友们也是众说纷纭,大家看待这件事的角度还是不同的。有人认为,不管是多么正 对于大佬们的一举一动,一直以来都备受热议,如今马云和刘强东等人的套现离场...

1050美元换多少人民币(10美元对于美国人来说)

1050美元换多少人民币(10美元对于美国人来说)

堂弟在美国生活了将近20年了,是平时很少回来,前一阵子突然回到国内还有些不适应,习惯了花美元的他冷不丁的用上了人民币,我就向他打听了一下人民币和美元的差别。体现在购买力上的话,通常美国那边称重是按照每磅来算的,我们拿猪肉 堂弟在美国生活了将近20年了,是平时很少回来,前一阵子突然回到国内还有些不适...

汽车销售朋友圈广告(做广告发朋友圈怎么发)

汽车销售朋友圈广告(做广告发朋友圈怎么发)

朋友圈广告投放,优秀的朋友圈广告文案是用户能否点击的关键,甚至直接关乎到用户的购买欲望。那么如何写出高转化率朋友圈广告文案呢?你需要把握好这4个方面。1、创意文案内容要真实切忌夸大其词,不要写那些一看就是糊弄人的东西,基 朋友圈广告投放,优秀的朋友圈广告文案是用户能否点击的关键,甚至直接关乎到用户...

西晒房子比普通能热几度(西晒房子选择几楼不热)

西晒房子比普通能热几度(西晒房子选择几楼不热)

西晒房子比普通房子会热一些,因为太阳容易光顾,照射进来一般都是一下午,晚上回家会感觉到家里很闷热。那么,西晒房子选择几楼不热呢?一起来看看久久派带来的详细介绍吧!西晒房子比普通能热几度同在10楼西户41℃东户33℃,同时 西晒房子比普通房子会热一些,因为太阳容易光顾,照射进来一般都是一下午,晚上回...

西瓜有酸味正常吗(西瓜有酸味是不是放坏了)

西瓜有酸味正常吗(西瓜有酸味是不是放坏了)

西瓜是生活中比较常见的一种水果,它含有多种营养成分,味道香甜可口,果肉鲜嫩多汁,很多人都喜欢吃。有些人吃西瓜会发现西瓜有酸味,这种可能是没有完全成熟,也可能是坏掉变质了,要看具体情况而定。西瓜有酸味正常吗不正常。1.如果 西瓜是生活中比较常见的一种水果,它含有多种营养成分,味道香甜可口,果肉鲜嫩多...

轻颜相机xsmax原相机模式在哪(轻颜相机xsmax原相机模式为什么没有)

轻颜相机xsmax原相机模式在哪(轻颜相机xsmax原相机模式为什么没有)

很多网友表示iPhonexsmax原相机拍照模式可以吊打所以系列,很多人把xsmax留着也只是为了拍照。目前,轻颜相机更新了xsmax原相机模式,大家可以直接在里面寻找并进行拍照哦!轻颜相机xsmax原相机模式在哪1、当 很多网友表示iPhonexsmax原相机拍照模式可以吊打所以系列,很多人把x...

成都人最喜欢的十家川菜馆?(成都好吃的川菜馆排名)

成都人最喜欢的十家川菜馆?(成都好吃的川菜馆排名)

成都好吃的川菜馆排名 人均消费成都食客(奎星楼店) 地址:奎星楼街8号 成都人说:特色烤茄子很好吃。加上秘制酱料,味道鲜美爽口。 成都的食客不是传统的川菜餐厅,而是迎合许多年轻人喜爱的创新江湖餐厅。成都的两家分店每天都排着长队,可以说是成都最受欢迎的餐厅之一。 成都人最喜欢的十家川菜...

毛巾杆安装高度需合理?(浴巾架一般装多高)

毛巾杆安装高度需合理?(浴巾架一般装多高)

浴巾架一般装多高 毛巾杆安装高度需合理? 随着生活水平的提高,人们对生活质量的追求也在不断提高,质量注重细节,需要注重细节的精致和舒适体验。毛巾杆作为卫浴间常见的五金洁具之一,就是注重生活的人会重视细节。毛巾杆是家庭卫生间常用的储物架,用于放置毛巾等洗漱用品,不仅生活方便,而且整...