數組
數組對象可以存儲任何類型的數據,是一個有序的集合
屬性:
arr.length
// arr.length 數組中數據的個數,可讀可寫
// [1] 清空數組 arr.length = 0;
// [2] 截取數組 arr.length = 比數組的實際個數少;
// [3] 稀疏數組 arr.length = 比數組中的實際個數多;
1. join()
說明
用於把數組轉成字符串
返回值:字符串
參數
arr.join([連接符])
- 無參數
默認以逗號連接
let arr = ["張三","李四","王五"]
var a = arr.join();
// => "張三,李四,王五"
- 空字符串參數 “”
let arr = ["張三","李四","王五"]
var a = arr.join("");
// => "張三李四王五"
- 非空字符串參數
let arr = ["張三","李四","王五"]
var a = arr.join("#");
// => "張三#李四#王五"
2. push()
說明
向數組的最後一位添加一條或多條數據
改變原數組
返回值:新數組的長度
參數
要添加的數據,一條或多條;
如果是多條,每條之間用逗號隔開;
如: arr.puah('a', 'b', 'c')
示例
let arr = ["張三","李四","王五"]
var a = arr.push("趙六")
console.log(arr, a);
// ["張三", "李四", "王五", "趙六"] 4
3. unshift()
說明
向數組的第一項添加一條或多條數據
會改變原數組
參數、返回值 和 arr.push() 相同
示例
let arr = ["張三","李四","王五"]
var num = arr.unshift("小二")
console.log(arr, num);
// ["小二", "張三", "李四", "王五"] 4
4. pop()
說明
刪除數組的最後一項
會改變原數組
無參
返回值:被刪除的元素
示例
let arr = ["張三","李四","王五"]
var a = arr.pop()
console.log(arr, a);
// ["張三", "李四"] "王五"
5. shift()
說明
刪除數組中的第一項
會改變原數組
無參
返回值:被刪除的元素
6. concat()
說明
用於連接一個或多個數組
不會改變原數組
返回值:連接後的新數組
參數
-
無參
返回和自身相同的數組,但不是自身,相當於把原數組複製了一份(複製數組) -
數組 、 某個值
let arr_1 = ["aaa", "bbb", "ccc"];
let arr_2 = [100, 200, 300];
let arr = arr_1.concat(arr_2, "張三", "李四");
console.log(arr);
// ["aaa", "bbb", "ccc", 100, 200, 300, "張三", "李四"]
7. reverse()
說明
翻轉數組
無參
無返回值
會改變原數組
示例
let arr = ["aaa", "bbb", "ccc"];
arr.reverse();
console.log(arr);
// ["ccc", "bbb", "aaa"]
8. splice()
說明
對數組進行添加數據或刪除數據
會改變原數組
返回值:數組 (是由刪除的數據組成,如果沒有刪除數據,返回值是一個空數組)
參數
arr.splice([ 開始位置, 刪除個數, 添加項 ])
-
無參
不會改變原數組,返回值爲空; -
一個參數(開始位置)
從指定位置開始,一直刪除到最後,返回值是被刪除的項組成的新數組;
let arr = ["aaa", "bbb", "ccc"];
var a = arr.splice(0);
console.log(arr);
// []
console.log(a);
// ["aaa", "bbb", "ccc"]
-
兩個參數(開始位置,刪除個數)
從指定位置開始,向後刪除指定的個數; -
三個參數(開始位置,刪除個數,添加項)
添加項的位置就是 ‘開始位置’ ,且添加項可以是0個,可以是多個,多條數據之間用逗號分隔;
返回值是被刪除的項組成的新數組;
let arr = ["aaa", "bbb", "ccc"];
arr.splice(2, 0, '張三', '李四')
console.log(arr);
// ["aaa", "bbb", "張三", "李四", "ccc"]
9. indexOf()
說明
查詢某個數據是否在數組中存在;
如果存在,返回數據在數組中第一次出現的下標;
如果不存在,返回-1