文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

如何将元素插入数组的指定索引?

2024-12-03 11:17

关注

本文已经过原作者 Guest Contributor 授权翻译!

简介

数组是一种线性数据结构,可以说是编程中最常用的数据结构之一。修改数组是一种常见的操作,这里,我们来讨论如何在 JS 中数组的任何位置添加元素。

元素可以添加到数组中的三个位置

1111

接着,我们一个一个过一下:

数组对象中的unshift()方法将一个或多个元素添加到数组的开头,并返回数组的新长度:

  1. const startArray = [3, 4, 5]; 
  2. const newLength = startArray.unshift(2); 
  3. console.log(newLength);  
  4. console.log(startArray); 
  5.  
  6. startArray.unshift(-1, 0, 2); 
  7. console.log(startArray); 

上面输出的结果:

  1. [ 2, 3, 4, 5 ] 
  2. [ -1, 0, 2, 2, 3, 4, 5 ] 

将元素添加到数组的末尾

使用数组的最后一个索引

要在数组末尾添加元素,可以使用数组的长度总是比下标小1这一技巧。

  1. const indexArray = [1, 2, 3]; 
  2. console.log(indexArray.length); 
  3. console.log(indexArray[2]); 
  4. console.log(indexArray[3]); 
  5.  
  6. indexArray[indexArray.length] = 4 
  7. console.log(indexArray); 

上面输出的结果:

  1. undefined 
  2. [ 1, 2, 3, 4 ] 

数组的长度是3,第二个元素是3。没有第三个元素,所以我们用undefined开头。最后,在该位置插入值4。

使用 push() 方法

数组的push()方法将一个或多个元素添加到数组的末尾。就像unshift()一样,它也会返回数组的新长度

  1. const pushArray = [1, 2, 3] 
  2. const newLength = pushArray.push(4, 5, 6, 7); 
  3. console.log(newLength); 
  4. console.log(pushArray); 

上面输出的结果:

  1. [ 1, 2, 3, 4, 5, 6, 7 ] 

使用 concat() 方法

通过数组的concat()方法实现两个或更多数组的合并。它创建新的副本,且不影响原始数组。与以前的方法不同,它返回一个新数组。使用该方法,要连接的值始终位于数组的末尾。

  1. const example1Array1 = [1, 2, 3]; 
  2. const valuesToAdd = [4, 5, 6]; 
  3. const example1NewArray = example1Array1.concat(valuesToAdd); 
  4.  
  5. console.log(example1NewArray); 
  6. console.log(example1Array1); 

上面输出的结果:

  1. [ 1, 2, 3, 4, 5, 6 ] 
  2. [ 1, 2, 3 ] 

我们可以将一个数组与一系列值连接起来:

  1. const array = [1,2,3]; 
  2. const newArray = array.concat('12'truenull, 4,5,6,'hello'); 
  3. console.log(array); 
  4. console.log(newArray); 

上面输出的结果:

  1. [ 1, 2, 3 ] 
  2. [ 1, 2, 3, '12'truenull, 4, 5, 6, 'hello' ] 

可以将一个数组与多个数组连接起来:

  1. const array1 = [1, 2, 3]; 
  2. const array2 = [4, 5, 6]; 
  3. const array3 = [7, 8, 9]; 
  4. const oneToNine = array1.concat(array2, array3); 
  5.  
  6. console.log(oneToNine); 

上面输出的结果:

  1. [ 1, 2, 3, 4, 5, 6, 7, 8, 9 ] 

在数组的任何位置添加元素

现在我们将讨论一个masterstroke方法,它可以用于在数组的任何位置添加元素——开始、结束、中间和中间的任何位置。

splice()方法添加,删除和替换数组中的元素。它通常用于数组管理,此方法不会创建新数组,而是会更新调用它的数组。

我们来看看splice()的实际应用。这里有一个weekdays数组,现在,我们想在'周二'和'周四'之间添加一个'周三'元素

  1. const weekdays = ['周一''周三''周四''周五'
  2. const deletedArray = weekdays.splice(2, 0, '周二'); 
  3.  
  4. console.log(weekdays); 
  5. console.log(deletedArray); 

上面输出的结果:

  1. ["周一""周二""周三""周四""周五"
  2. [] 

分析一下上面的代码。我们想在weekdays数组的第二个位置添加'周二'。这里不需要删除任何元素。weekdays.splice(2, 0, 'wednesday')被读取为第二个位置,不移除任何元素并添加'周二'。

下面是使用splice()的一般语法:

  1. let removedItems = array.splice(start[, deleteCount[, item1[, item2[, ...]]]]) 

我们看一下slice()的另一个示例,在该示例中我们同时添加和删除数组。我们将在第二个位置添加 '周三',但是我们还将在该处删除错误的周末值:

  1. const weekdays = ['周一''周三''周六''周日''周四''周五'
  2. const deletedArray = weekdays .splice(2, 2, '周二'); 
  3.  
  4. console.log(weekdays); 
  5. console.log(deletedArray); 

上面输出的结果:

  1. ["周一""周三""周二""周四""周五"
  2. ["周六""周日"

总结

在本文中,我们研究了 JS 中可以向数组添加元素的多种方法。我们可以使用 unshift()将它们添加到开头。我们可以使用索引,pop()方法和concat()方法将它们添加到末尾。通过splice()方法,我们可以更好地控制它们的放置位置。

完~ 我是小智,我要去刷碗了,我们下期见~

作者:Guest Contributor

译者:前端小智

来源:stackabuse

原文:https://stackabse.com/javascript-how-to-inser-elements-into-a-specific-index-of-an-array/

本文转载自微信公众号「大迁世界」,可以通过以下二维码关注。转载本文请联系大迁世界公众号。

 

来源: 大迁世界内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯