iT邦幫忙

2022 iThome 鐵人賽

DAY 18
0
自我挑戰組

30天JavaScript自學挑戰系列 第 18

Day 18 陣列 -2

  • 分享至 

  • xImage
  •  

當我們想改變陣列中的值時,我們可以這樣做:

const fruits = ["apple", "banana", "cherry"];
fruits[2] = "mango";

console.log(fruits);
// ["apple", "banana", "mango"]

先前提過使用const宣告的變數是不可更改的,那為什麼這個陣列卻可以被更改呢?
這是因為只有primitive values是不可更改的,但陣列不屬於primitive values,所以我們可以更改陣列,但替換整個陣列是不行的。

const fruits = ["apple", "banana", "cherry"];
fruits = ["lemon", "grape"];

這樣會出現錯誤。

陣列有許多的方法(method),當我們使用方法時,在陣列後面加上.再接上方法的名稱,這邊簡單介紹一些:
push這個方法可以將值加進陣列最後面,例如我們想把sakura加進flowers陣列中可以這麼做:

const flowers = ["orchid", "rose"];
const newLength = flowers.push("sakura");

console.log(flowers);
// ["orchid", "rose", "sakura"]
console.log("newLength");
// 3

實際上push方法會回傳一個值,這個值就是更改過後的陣列的長度,因此我們若將它儲存到一個變數(這裡是newLength)中,就可以得到他所回傳的值(陣列長度等於3)。

unshift這個方法可以將值加進陣列最前面,例如

const colors = ["black", "white"];
colors.unshift("orange");

console.log(colors);
// ["orange", "black", "white"]

另外,unshift也一樣會回傳新陣列的長度。

pop方法會移除陣列的最後一個值,我們不需要傳入任何參數,pop方法回傳的是被移除的那個值:

const people = ["Alex", "Ben", "Charlie"];
const el = people.pop();

console.log(people);
// ["Alex", "Ben"]
console.log(el);
//Charlie

上一篇
Day 17 陣列 - 1
下一篇
Day 19 物件-1
系列文
30天JavaScript自學挑戰30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言