意識: 操作陣列時,要有sense"會不會修改到原本陣列"
需要依實作情境來判斷,究竟要直接操作原本的陣列,還是要拷貝出一個新陣列。
以空間運用的原則,若沒必要用到第二個新陣列才能繼續操作,就使用修改原陣列的語法。
新增元素至陣列 4種方法
array.push('q', 'w') 注意沒有中括弧!!
const movies = []
//方法一
movies.push(1, 2, 3); //傳入 3 個參數:1,2,3
//方法二 展開運算子
movies.push(...[1, 2, 3]); //把陣列用展開運算子打開,打開後就和方法一一模一樣
//方法三
const numbers = [1, 2, 3]; //做一個陣列
movies.push(...numbers); //和方法二同樣意思
//方法四
const numbers = [1, 2, 3]; //做一個陣列
for (const value of numbers) { //for...of 迭代陣列元素
movies.push(value)
}
console.log(movies) //[1, 2, 3] 一層array
Spread syntax (...)
|修改原陣列|
array.splice(start, deleteCount, item..)
|回傳新陣列| 需以新變數接住,再繼續操作
array.slice(start, end) 切割陣列slice() 結尾的 index 並不會包含在新陣列中。