一、概述
join( ) ————————數組轉字符串
split( ) ———————–字符串轉數組
push( ) ———————-將數據添加到數組尾部
pop( ) ———————–數組末尾移除最后一項
shift( ) ———————–刪除原數組第一項
unshift( ) ——————–將數據添加到數組頭部
sort( ) ————————按升序排列數組項
reverse( ) ——————–反轉數組項的順序
concat( ) ——————–多個數組合并,原數組不變
slice( ) ———————–返回開始下標到結束下標之間的項組成的新數組,原數組不變
splice( ) ———————-從數組中添加/刪除項目,然后返回被刪除的項目,改變原數組
二、定義和用法
1、join()
- 定義和用法
join() 方法用于把數組中的所有元素放入一個字符串。
元素是通過指定的分隔符進行分隔的。 - 語法
array.join(separator)
separator:可選。指定要使用的分隔符。如果省略該參數,則使用逗號作為分隔符。 - 返回值
join() 返回一個字符串。該字符串是通過把 array的每個元素轉換為字符串,然后把這些字符串連接起來,在兩個元素之間插入 separator 字符串而生成的。
<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
console.log(arr.join()) //George,John,Thomas
</script>
<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
console.log(arr.join(".")) //George.John.Thomas
</script>
2、concat()
- 定義和用法
concat() 方法用于連接兩個或多個數組。
該方法不會改變現有的數組,而僅僅會返回被連接數組的一個副本。 - 語法
array.concat(arrayX,arrayX,arrayX)
arrayX:必需。該參數可以是具體的值,也可以是數組對象。可以是任意多個。 - 返回值
concat() 返回一個新的數組 - 實例
<script type="text/javascript">
var a = [1,2,3];
console.log(a.concat(4,5)); //[1,2,3,4,5]
</script>
<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
var arr2 = new Array(3)
arr2[0] = "James"
arr2[1] = "Adrew"
arr2[2] = "Martin"
console.log(arr.concat(arr2)) //[George,John,Thomas,James,Adrew,Martin]
</script>
<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
var arr2 = new Array(3)
arr2[0] = "James"
arr2[1] = "Adrew"
arr2[2] = "Martin"
var arr3 = new Array(2)
arr3[0] = "William"
arr3[1] = "Franklin"
console.log(arr.concat(arr2,arr3)) //[George,John,Thomas,James,Adrew,Martin,William,Franklin]
</script>
3、pop()
- 定義和用法
pop() 方法用于刪除并返回數組的最后一個元素。 - 語法
array.pop() - 返回值
pop() 返回數組的最后一個元素 - 說明
pop() 方法將刪除 arrayObject 的最后一個元素,把數組長度減 1,并且返回它刪除的元素的值。如果數組已經為空,則 pop() 不改變數組,并返回 undefined 值。 - 實例
<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
console.log(arr) //[George,John,Thomas]
console.log(arr.pop()) //[Thomas]
console.log(arr) //[George,John]
</script>
4、shift()
- 定義和用法
shift() 方法用于刪除并返回數組的第一個元素。 - 語法
array.shift() - 返回值
shift() 返回數組的第一個元素 - 說明
shift() 方法將刪除 arrayObject 的第一個元素,把數組長度減 1,并且返回它刪除的元素的值。如果數組已經為空,則 shift() 不改變數組,并返回 undefined 值。 - 實例
<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
console.log(arr) //[George,John,Thomas]
console.log(arr.shift()) //[George]
console.log(arr) //[John,Thomas]
</script>
5、push()
- 定義和用法
push() 方法可向數組的末尾添加一個或多個元素,并返回新的長度。
元素是通過指定的分隔符進行分隔的。 - 語法
array.push(newelement1,newelement2,…,newelementX)
newelement1:必需。要添加到數組的第一個元素。
newelement2: 可選。要添加到數組的第二個元素。
newelementX: 可選。可添加多個元素。 - 返回值
push() 把指定的值添加到數組后的新長度。 - 實例
<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
console.log(arr) //[George,John,Thomas]
console.log(arr.push("James")) //4
console.log(arr) //[George,John,Thomas,James]
</script>
6、unshift()
- 定義和用法
push() 方法可向數組的開頭添加一個或更多元素,并返回新的長度。
元素是通過指定的分隔符進行分隔的。 - 語法
array.unshift(newelement1,newelement2,…,newelementX)
newelement1:必需。要添加到數組的第一個元素。
newelement2: 可選。要添加到數組的第二個元素。
newelementX: 可選。可添加多個元素。 - 返回值
unshift() 把指定的值添加到數組后的新長度。 - 實例
<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
console.log(arr) //[George,John,Thomas]
console.log(arr.unshift("James")) //4
console.log(arr) //[James,George,John,Thomas]
</script>
7、reverse()
- 定義和用法
reverse() 方法用于顛倒數組中元素的順序。
元素是通過指定的分隔符進行分隔的。 - 語法
array.reverse() - 返回值
reverse() 沒有返回值,該方法會改變原來的數組,而不會創建新的數組 - 實例
<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
console.log(arr) //["George", "John", "Thomas"]
arr.reverse()
console.log(arr) // ["Thomas", "John", "George"]
</script>
8、slice()
- 定義和用法
slice() 方法可從已有的數組中返回選定的元素。 - 語法
array.slice(start,end)
start:必需。規定從何處開始選取。如果是負數,那么它規定從數組尾部開始算起的位置。也就是說,-1 指最后一個元素,-2 指倒數第二個元素,以此類推。
end:可選。規定從何處結束選取。該參數是數組片斷結束處的數組下標。如果沒有指定該參數,那么切分的數組包含從 start 到數組結束的所有元素。如果這個參數是負數,那么它規定的是從數組尾部開始算起的元素。 - 返回值
slice() 返回一個新的數組 - 說明
請注意,該方法并不會修改數組,而是返回一個子數組。 - 實例
<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
console.log(arr) //[George,John,Thomas]
console.log(arr.slice(1)) // [John,Thomas]
console.log(arr) // [George,John,Thomas]
</script>
<script type="text/javascript">
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
console.log(arr) //[George,John,Thomas,James,Adrew,Martin]
console.log(arr.slice(2,4)) // [Thomas,James]
console.log(arr) //[George,John,Thomas,James,Adrew,Martin]
</script>
9、splice()
- 定義和用法
splice() 方法向/從數組中添加/刪除項目,然后返回被刪除的項目。
該方法會改變原始數組。 - 語法
array.splice(index,howmany,item1,…,itemX)
index:必需。整數,規定添加/刪除項目的位置,使用負數可從數組結尾處規定位置。
howmany:必需。要刪除的項目數量。如果設置為 0,則不會刪除項目。
item1, …, itemX:可選。向數組添加的新項目。 - 返回值
splice() 包含被刪除項目的新數組,如果有的話。 - 實例
<script type="text/javascript">
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
console.log(arr) //[George,John,Thomas,James,Adrew,Martin]
arr.splice(2,0,"William")
console.log(arr) //[George,John,William,Thomas,James,Adrew,Martin]
</script>
<script type="text/javascript">
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
console.log(arr) //[George,John,Thomas,James,Adrew,Martin]
arr.splice(2,1,"William")
console.log(arr) // [George,John,William,James,Adrew,Martin]
</script>
<script type="text/javascript">
var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
console.log(arr) //[George,John,Thomas,James,Adrew,Martin]
arr.splice(2,3,"William")
console.log(arr) // [George,John,William,Martin]
</script>
10、toString()
- 定義和用法
toString() 方法可把數組轉換為字符串,并返回結果。
該方法與沒有參數的 join() 方法返回的字符串相同。
11、sort()
- 定義和用法
此方法接收一個函數作為參數。它對數組的元素進行排序并返回它。也可以使用含有參數的sort()方法進行排序。
const arr = [5, 4, 3, 2, 1]
arr.sort((a, b) => a - b)
// -------> Output : [1, 2, 3, 4, 5]
arr.sort((a, b) => b - a)
//-------> Output : [5, 4, 3, 2, 1]
12、includes()
- 定義和用法
此方法用于判斷字符串是否包含指定的子字符串。如果找到匹配的字符串則返回 true,否則返回 false。
譯者注:includes() 方法區分大小寫。
const arr = [1, 2, 3, 4, 5]
arr.includes(3)
// -------> Output : true
arr.includes(8)
// -------> Output : false
13、forEach()
- 定義和用法
此方法用于調用數組的每個元素。并將元素傳遞給回調函數。
譯者注: forEach() 對于空數組是不會執行回調函數的。
const arr = [ { id: 1, name: "john" },
{ id: 2, name: "Ali" }, { id: 3, name: "Mass" },]
arr .forEach(element => console.log(element.name))
//-------> Output : john
// Ali
// Mass
14、map()
- 定義和用法
該方法返回一個新數組,數組中的元素為原始數組元素調用函數處理后的值。它按照原始數組元素順序依次處理元素。
譯者注:map() 不會對空數組進行檢測;map() 不會改變原始數組。
const arr = [5, 4, 3, 2, 1]
arr.map(x => x * x)
//-------> Output : 25
// 16
// 9
// 4
// 1