自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何將元素插入數(shù)組的指定索引?

運維 數(shù)據(jù)庫運維
數(shù)組是一種線性數(shù)據(jù)結(jié)構(gòu),可以說是編程中最常用的數(shù)據(jù)結(jié)構(gòu)之一。修改數(shù)組是一種常見的操作,這里,我們來討論如何在 JS 中數(shù)組的任何位置添加元素。

[[382317]]

本文已經(jīng)過原作者 Guest Contributor 授權(quán)翻譯!

簡介

數(shù)組是一種線性數(shù)據(jù)結(jié)構(gòu),可以說是編程中最常用的數(shù)據(jù)結(jié)構(gòu)之一。修改數(shù)組是一種常見的操作,這里,我們來討論如何在 JS 中數(shù)組的任何位置添加元素。

元素可以添加到數(shù)組中的三個位置

  • 開始/第一個元素
  • 結(jié)束/最后元素
  • 其他地方

1111

接著,我們一個一個過一下:

數(shù)組對象中的unshift()方法將一個或多個元素添加到數(shù)組的開頭,并返回數(shù)組的新長度:

  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); 

上面輸出的結(jié)果:

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

將元素添加到數(shù)組的末尾

使用數(shù)組的最后一個索引

要在數(shù)組末尾添加元素,可以使用數(shù)組的長度總是比下標(biāo)小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); 

上面輸出的結(jié)果:

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

數(shù)組的長度是3,第二個元素是3。沒有第三個元素,所以我們用undefined開頭。最后,在該位置插入值4。

使用 push() 方法

數(shù)組的push()方法將一個或多個元素添加到數(shù)組的末尾。就像unshift()一樣,它也會返回數(shù)組的新長度

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

上面輸出的結(jié)果:

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

使用 concat() 方法

通過數(shù)組的concat()方法實現(xiàn)兩個或更多數(shù)組的合并。它創(chuàng)建新的副本,且不影響原始數(shù)組。與以前的方法不同,它返回一個新數(shù)組。使用該方法,要連接的值始終位于數(shù)組的末尾。

  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); 

上面輸出的結(jié)果:

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

我們可以將一個數(shù)組與一系列值連接起來:

  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); 

上面輸出的結(jié)果:

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

可以將一個數(shù)組與多個數(shù)組連接起來:

  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); 

上面輸出的結(jié)果:

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

在數(shù)組的任何位置添加元素

現(xiàn)在我們將討論一個masterstroke方法,它可以用于在數(shù)組的任何位置添加元素——開始、結(jié)束、中間和中間的任何位置。

splice()方法添加,刪除和替換數(shù)組中的元素。它通常用于數(shù)組管理,此方法不會創(chuàng)建新數(shù)組,而是會更新調(diào)用它的數(shù)組。

我們來看看splice()的實際應(yīng)用。這里有一個weekdays數(shù)組,現(xiàn)在,我們想在'周二'和'周四'之間添加一個'周三'元素

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

上面輸出的結(jié)果:

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

分析一下上面的代碼。我們想在weekdays數(shù)組的第二個位置添加'周二'。這里不需要刪除任何元素。weekdays.splice(2, 0, 'wednesday')被讀取為第二個位置,不移除任何元素并添加'周二'。

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

  1. let removedItems = array.splice(start[, deleteCount[, item1[, item2[, ...]]]]) 
  • start-開始修改數(shù)組的索引。
  • deleteCount -從start 刪除的數(shù)組中可選的項目數(shù)。如果省略,則start后的所有項目都將被刪除。
  • item1, item2, ...-從start 添加到數(shù)組的可選項目。如果省略,它將僅從數(shù)組中刪除元素。

我們看一下slice()的另一個示例,在該示例中我們同時添加和刪除數(shù)組。我們將在第二個位置添加 '周三',但是我們還將在該處刪除錯誤的周末值:

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

上面輸出的結(jié)果:

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

總結(jié)

在本文中,我們研究了 JS 中可以向數(shù)組添加元素的多種方法。我們可以使用 unshift()將它們添加到開頭。我們可以使用索引,pop()方法和concat()方法將它們添加到末尾。通過splice()方法,我們可以更好地控制它們的放置位置。

完~ 我是小智,我要去刷碗了,我們下期見~

作者:Guest Contributor

譯者:前端小智

來源:stackabuse

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

本文轉(zhuǎn)載自微信公眾號「大遷世界」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系大遷世界公眾號。

 

責(zé)任編輯:武曉燕 來源: 大遷世界
相關(guān)推薦

2023-03-29 07:37:40

樹狀數(shù)組數(shù)據(jù)結(jié)構(gòu)

2009-06-05 11:16:58

字符串動態(tài)轉(zhuǎn)換

2009-08-26 18:05:25

ViewState持久

2009-11-25 16:55:45

PHP函數(shù)explod

2023-04-12 15:37:31

Linux系統(tǒng)CPU

2024-09-03 09:06:29

2018-04-09 13:02:03

分析數(shù)字營銷企業(yè)

2015-10-28 14:59:26

JAVA插件Chrome

2011-11-08 15:15:40

路由器復(fù)位

2012-11-07 15:57:34

OSSECMYSQL

2009-06-11 10:50:27

netbeans配置

2024-12-27 15:58:20

2010-01-22 10:53:04

C++堆棧

2021-08-25 10:37:47

物聯(lián)網(wǎng)人工智能IoT

2017-01-24 19:57:13

Linux命令Shell

2023-11-06 13:11:22

Docker映像Builkit

2023-02-17 12:07:45

ChatGPTPython

2018-06-12 15:07:57

IT

2011-05-18 14:51:43

2013-11-29 13:47:54

創(chuàng)業(yè)創(chuàng)意產(chǎn)品
點贊
收藏

51CTO技術(shù)棧公眾號