#### 1.reverse()
將數組的元素顛倒過來,也就是變成逆序,此方法會修改原數組
~~~
var arr=[1,2,3,4,5];
console.log(arr.reverse());//5,4,3,2,1
console.log(arr);//5,4,3,2,1
~~~
#### 2.sort()
默認對數組進行升序排序。此方法會修改原數組
~~~
var arr=[5,4,3,2,1];
arr.sort();
console.log(arr);//1,2,3,4,5
~~~
如果數組中 存放的不是整數呢?假設數組中有字符串1,10,9,100那么最終的排序結果卻是1,10,100,9。這是因為sort是按字母順序對數組中的元素進行排序,說得更精確點,是按照字符編碼的順序進行排序。
如果想按照其他標準進行排序,就需要提供比較函數,該函數要比較兩個值,然后返回一個用于說明這兩個值的相對順序的數字。
~~~
function compare(value1,value2){
return value1-value2;
}
}
var arr=["1","10","9","100"];
arr.sort(compare);
console.log(arr);//["1","9","10","100"]
~~~
兩個字符串數字相減會轉化為整數,所以當value1小于value2時會返回負數,當value1大于value2時會返回正數,sort會根據這些不同的返回值來進行排序(在這里就是按照字符串的數字值來排序)。
#### 3.concat()
數組的拼接,創建當前數組的副本,將接收到的參數添加到這個副本中并返回新構建的數組
~~~
var arr1=["black","white","red"];
var arr2=arr1.concat("blue");
console.log(arr2);//["black","white","red","blue"]
~~~
#### 4.slice()
可以把slice當作創建當前數組的子數組,它的參數代表數組的位置,當只有一個參數時,返回從該位置到數組末尾的子數組,當有兩個參數時,返回起始位置到結束位置-1的子數組。
~~~
var arr=["red","green","blue","yellow"];
var arr1=arr.slice(1);
var arr2=arr.slice(1,3);
console.log(arr1);//["green","blue","yellow"]
console.log(arr2);//["green","blue"]
~~~
#### 5.splice()
splice可以說是數組的所有方法中最強大的方法了,它既可以實現刪除,也可以實現插入,還可以實現替換。它接受三個參數,要刪除的第一項的位置,要刪除的項數,要替換的新數據。
如果指定前兩個參數就可以實現刪除,如果指定三個參數并且第二個參數為0,就是實現了插入,如果指定了三個參數就實現了替換。
splice在原數組上進行修改,并返回刪除的項。
~~~
var arr=["red","green","blue","yellow"];
arr.splice(0,2);//刪除數組中的前兩項
console.log(arr);//["blue","yellow"]
arr.splice(0,0,"red","green");//插入
console.log(arr);//["red","green","blue","yellow"]
arr.splice(0,1,"black");//替換掉第一個元素
console.log(arr);//["black","green","blue","yellow"]
~~~
#### 6.indexOf()、lastIndexOf()
返回某個元素的位置,indexOf是從數組的開頭查找,lastIndexOf是從后往前找
~~~
var arr=[1,2,3,1,5];
console.log(arr.indexOf(1));//0
console.log(arr.lastIndexOf(1));//3
~~~
- html/css
- 不一樣的css3之Transform
- 不一樣的css3之Transition
- 不一樣的css3之Animation
- Less初學
- Sass初學
- 水平垂直居中那些事
- css優先級
- css基礎教學
- javascript
- 淺談javascript事件處理程序
- cookie,localStorage,sessionStorage的區別
- Ajax
- 說說JSON
- 數組常用的方法
- 字符串常用的方法
- 閉包之我的理解
- 常用DOM操作
- 扒一扒所謂的面向對象
- JS Blob對象
- ES6學習筆記(一)
- ES6學習筆記(二)
- 用ES6書寫React
- React+Redux實戰總結
- 基于Express搭建開發環境
- 其他
- github初學
- 輕松配置Webpack
- asp.net學習筆記
- ado.net
- 如何使用ajax進行前后端交互
- 銀行大廳自助服務系統需求分析
- 西電銀行開發手冊
- 接口
- ajax