es6怎麼替換陣列中指定元素

2022-11-16 18:00:08

3種替換方法:1、使用括號表示法重新賦值,語法「arr[index] = '新元素值';」;2、使用Array.splice()替換,語法「arr.splice(index, 1, '新元素值');」;3、利用for迴圈來替換,語法「for(i=0;i<陣列長度;i++){if(arr[i]==='舊元素值'){arr[i]='新元素值';break;}}」。

前端(vue)入門到精通課程:進入學習
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API偵錯工具:

本教學操作環境:windows7系統、ECMAScript 6版、Dell G3電腦。

方法1:使用括號表示法重新賦值來替換陣列元素

實現思想:

  • 使用 indexOf() 方法獲取元素的索引。

  • 使用括號表示法更改特定索引處元素的值。

  • 陣列元素的值將就地更新。

範例:

const arr = ['a', 'b', 'c'];
const index = arr.indexOf('a'); // ?️  0
if (index !== -1) {
  arr[index] = 'z';
}
console.log(arr); // ?️ ['z', 'b', 'c']
登入後複製

1.png

我們使用 Array.indexOf() 方法來獲取值為 a 的陣列元素的索引。

然後我們用新值替換了該索引處的元素。

請注意 ,如果 indexOf 方法沒有找到具有所提供值的元素,則返回 -1。 我們檢查該方法沒有返回 -1 的索引,以確儲存在具有指定值的元素。

JavaScript 中的索引從零開始,因此第一個元素的索引為 0,最後一個元素的索引為 arr.length - 1

或者,我們可以使用 array.splice() 方法。

方法2:使用 Array.splice() 替換陣列中的元素

實現思想:

  • 使用 indexOf() 方法獲取要替換的元素的索引。

  • 呼叫 Array.splice() 方法替換特定索引處的元素。

  • 陣列元素將被替換到位。

範例:

const arr = ['a', 'b', 'c'];
console.log(arr); // ?️ ['a', 'b', 'c']
const index = arr.indexOf('b'); // ?️  1
arr.splice(index, 1, 'z');
console.log(arr); // ?️ ['a', 'z', 'c']
登入後複製

2.png

我們將以下 3 個引數傳遞給 Array.splice() 方法:

  • start index - 開始更改陣列的索引。

  • delete count - 應該從陣列中刪除多少元素。

  • item1 - 要新增到陣列的專案。

我們將 start 索引設定為要替換的陣列元素的索引。

我們將刪除計數設定為 1,因此 Array.splice() 方法將刪除指定索引處的陣列元素,並將提供的第三個引數新增到同一索引處。

在實踐中,我們刪除指定索引處的陣列元素,然後在同一索引處插入不同的值,因此我們最終替換了陣列元素。

另一種方法是使用基本的 for 迴圈。 **

方法3:使用 for 迴圈替換陣列中的元素

實現思路:

  • 使用 for 迴圈迭代 array.length 次。

  • 在每次迭代中,檢查陣列元素是否是要替換的元素。

  • 如果滿足條件,則替換索引處的元素並跳出 for 迴圈。

範例:

const arr = ['a', 'b', 'c'];
console.log(arr); // ?️ ['a', 'b', 'c']
for (let index = 0; index < arr.length; index++) {
  if (arr[index] === 'c') {
    arr[index] = 'z';
    break;
  }
}
console.log(arr); // ?️ ['a', 'b', 'z']
登入後複製

3.png

我們使用了一個基本的 for 迴圈來遍歷陣列。 在每次迭代中,我們檢查元素是否是我們想要替換的元素。

一旦我們找到並替換了元素,我們就會跳出迴圈以避免不必要的工作。

如果您想用特定值替換所有陣列元素,只需刪除 break 語句。

【推薦學習:】

以上就是es6怎麼替換陣列中指定元素的詳細內容,更多請關注TW511.COM其它相關文章!