Array對象常用方法
不改變原數組:
- concat()
- join()
- slice()
- toString()
改變原數組:
- pop()
- push()
- reverse()
- shift()
- unshift()
- sort()
- splice()
不改變原數組:
array.concat(array)
連接兩個或多個數組
返回被連接數組的一個副本
[1,2].concat([3,4])
// expected output: "[1,2,3,4]"
join(string)
把數組中所有元素放入一個字符串
返回字符串
['Fire', 'Air', 'Water'].join('')
// expected output: "FireAirWater"
slice(begin[, end])
從已有的數組中返回選定的元素
返回一個新數組
['ant', 'bison', 'camel', 'duck', 'elephant'].slice(2, 4)
// expected output: Array ["camel", "duck"]
toString()
把數組轉爲字符串
返回數組的字符串形式
[1,2].toString()
// expected output: "1,2"
改變原數組:
pop()
刪除數組最後一個元素,如果數組爲空,則不改變數組,返回undefined
返回被刪除的元素
push()
向數組末尾添加一個或多個元素
返回新數組的長度
reverse()
顛倒數組中元素的順序
返回該數組
shift()
把數組的第一個元素刪除,若空數組,不進行任何操作,返回undefined
返回第一個元素的值
unshift()
向數組的開頭添加一個或多個元素
返回新數組的長度
sort([compareFunction])
compareFunction:用來指定按某種順序進行排列的函數。
省略則對數組元素進行(ascii)排序
返回該數組
let numbers = [4, 2, 5, 1, 3]
numbers.sort((a, b) => a - b) // return > 0, a <=> b
// [1, 2, 3, 4, 5]
splice(start[, deleteCount[, item1[, item2[, ...]]]])
從數組中添加/刪除項目
返回被刪除的元素
let months = ['Jan', 'March', 'April', 'June'];
// 插入
months.splice(1, 0, 'Feb');
// inserts at index 1
console.log(months);
// expected output: Array ['Jan', 'Feb', 'March', 'April', 'June']
// 替換
months.splice(4, 1, 'May','Lili');
// replaces 1 element at index 4
console.log(months);
// expected output: Array ["Jan", "Feb", "March", "April", "May", "Lili"]
// 刪除
months.splice(4, 2);
// delete 2 element start at index 4
console.log(months);
// expected output: Array ["Jan", "Feb", "March", "April"]