[TOC]
# 數組的方法
## 1.增加(改變數組的內容)
### 1.1 push從后增加
> 語法:push(para1,para2)
```
var arr = [1,2,3,4];
arr.push(5,6);
```
### 1.2unshift從頭增加
> 語法:unshift(para1,para2)
```
var arr = [1,2,3,4];
arr.unshift(-1,0);
```
### 1.3增加 concat()(不改變原來數組內容)
concat(value|[arr]) 本方法可以傳單個值,也可以傳數組
```
var arr = [1,2,3,4];
var n = arr.concat(7,8)
console.log(n);//1, 2, 3, 4, 7, 8
console.log(arr);//1, 2, 3, 4
```
**只有賦值給其他元素才會將增加的值一起輸出來**
#### 1.3.1.復制數組
* 方法一:
```
var arr = [1,2,3,4];
var b=[];
for(let i=0;i<arr.length;i++){
b.push(arr[i]);
}
```
* 方法二:
```
var arr = [1,2,3,4];
var b = [].concat(arr);
console.log(b);
```
* 方法三:
```
var b = arr.slice(0);
console.log(b);
```
## 2.刪除(改變)
### 2.1pop() //從尾部刪除
```
var arr = [1,2,3];
alert(arr.pop()); //3
alert(arr) //1,2
```
### 2.1shift() // 從頭部刪除
```
var arr = [1,2,3];
alert(arr.shift()); //1
```
alert(arr) //2,3
## 3.修改,指定三個參數arrObject.splice(index,howmany,item)
> //指定三個參數:
index-->從哪里開始
howmany-->刪除幾個
item-->在刪除的地方添加的值
```
var arr = [1,2,3,4,5];
arr.splice(0,2,6,7);
alert(arr); //6,7,4,5
```
## 4.查詢
### 4.1 arr[index]
```
//arr[index] 查詢對應下標的值
var arr=[1,2,3];
console.log(arr[0]); //1;
```
### 4.2indexOf(value)
```
//indexOf(value) 查詢對應值的下標
var arr=[1,2,3,4];
console.log(arr.indexOf(1)); //0
//如果沒有對應的值,則返回-1
```
### 4.3slice()
```
//arrayObject.slice(start,end)
//1個參數
var arr=[1,2,3,4];
var b=arr.slice(1);
console.log(b); //2,3,4
//2個參數
var c = arr.slice(1,3);
console.log(c); //2,3
```
```
slice復制數組
var arr = [1,2,3];
var b = arr.slice(0);
console.log(b);
```
## 5.splice(改變原來數組) 包含增,刪,改
### a.增加,指定三個參數splice(index,howmany,item)
```
//splice(index,howmany,item)
//傳3個參數表示:起始位置、0(刪除的項數)、插入的項在index之后
var arr= [1,2,3,4,5];
arr.splice(2,0,"red","green"); //在第2位之后,增加2個元素
console.log(arr); //[1,2,"red","green",3,4,5]
```
### b.刪除,指定兩個參數splice(index,howmany)
```
//splice(index,howmany)
//傳2個參數表示:起始位置和刪除的個數
var arr = [1,2,3,4,5];
arr.splice(0,2); //從0位開始,刪除2個
alert(arr); //[3,4,5]
```
### c.修改,指定三個參數splice(index,howmany,item)
```
//指定三個參數:起始位置,刪除的項數,插入的數量
var arr = [1,2,3,4,5];
arr.splice(0,2,6,7);
alert(arr); //6,7,4,5
```
## 6.join
> 通過指定分隔符,將數組所有元素放入字符串
```
arrayObject.join(separator)
var arr=["red","green","yellow"];
var a = arr.join(); //red,green,yellow
var b= arr.join(""); //redgreenyellow
var c=arr.join("."); //red.green.yello
alert(c);
```
## 7.排序
### a.升序
```
```
- 1.JS的基礎知識
- (1)調試
- (2)變量
- (3)數據類型
- 數據類型之間的轉換
- (4)全局變量和局部變量
- (5)運算符和表達式
- (6)數組
- 2.控制語句DOM,BOM,事件
- (1)控制語句
- (2)DOM的基礎
- 節點
- 改變樣式
- DOM事件
- 3.函數
- (1)聲明函數
- (2)構造函數
- (3)函數的參數
- (4)函數的傳參
- (5)改變this
- (6)重載
- (7)回調函數
- 4.數組
- (1)創建數組
- (2)增刪改查
- (3)字符串與數組的轉換
- 5.正則
- (1)創建正則
- (2)字符串中支持正則
- (3)語法
- 最核心的元字符
- 6.ajax
- (1)原生ajax
- (2)http,get,post
- (3)跨域
- (4)jQuery-ajax
- (5)axios
- 7.面向對象
- (1)原型
- (2)原型鏈,繼承
- (3)多態
- 8.es6小結
- 9.js+canvas實現驗證碼
- 10.js的作用域
- 11.閉包
- 實例
- toggle
- 圖片切換
- swiper
- 遮罩顏色漸變
- 表格添加
- 瀑布流
- ajax數據請求渲染
- 百度地圖