一、數組:
數組的基本方法:
1、增:arr.unshift() /push() 前增/后增
2、刪:arr.shift() /pop() 前刪/后刪
3、改:arr.splice(開始下標,刪除的長度,增加的元素,增加的元素)
注:增加元素時,刪除的長度為0
4、截: arr.slice(開始下標,結束下標)
5、拼:arr.concat(元素,元素,元素)
注:拼接到新數組的末尾,如果是數組就打開拼接。
6、復:forin / slice / concat / map /forEach
注: ES5新增的復制方法都沒for循環效率高
for (變量
in 對象){
在此執行代碼
}
7、排: arr.reverse() 逆序輸出
arr.sort([a-b])該方法沒有參數時按照字符編碼的順序進行排序 a-b<0 數字從小到大排序 a-b>0從大到小排序
8、轉:arr.toString() 轉為以逗號分隔的字符串 / 轉換進制
arr.join('分隔符')
(截、拼、轉不影響原數組)
ES5拓展數組方法
1、indexOf(查找的元素,開始查找的下標):從某個下標開始查找這個元素第一次出現的位置。 查不到返回-1。
2、 lastindexOf(查找的元素,下標): 從后往前查找
3、forEach() 遍歷數組 (無返回值)
數組名.forEach(function(value,index,arr){
(數組元素,數組下標,整個數組)
語句組;
})
4、map(function(value,index,arr){return ...}) //遍歷數組(有返回值)
var list = arr.map(function(value,index,arr){
return value;
})
forEach和map方法只能遍歷數組,forin遍歷數組和對象。
5、reduce(function(prev,next,index,array){return ...}) // 歸並 (有返回值)
注:先第一個數賦值prev,再取第二個數賦值next,然后prev與next進行運算,運算后的值再賦給prev,next繼承取下一數。
用於求和,階乘
var arr = [1,2,3,4];
var list = arr.reduce(function(prev,next,index,array){
return prev * next;
})
6、filter(function(value,index,arr{return ...}) //過濾 (有返回值)
var arr = [1,6,4,4,8,9,33];
var list =arr.filter(function(value){
return value >6
})
console.log(list) // 8,9,13
(ES5的方法都不影響元素組)
二、字符串:
字符串的方法:
1、 查:
charAt(index):根據 下標查找指定的字符 下表找不到時,輸出 空。
charCodeAt(index):根據下標查找指定的字符的編碼值 。下標超出范圍時,輸出NAN
2、 替:
replace(舊串,新串)
替換成新的字符串, 一次只能替換一個
3、截:后面的end不截 substring:(start,end) 支持參數互換(3,4)(4,3)
substr:(start,length)
slice:(start,end) 支持負數(從右往左數,-1至-10等等)
4、轉:
toUpperCase():小寫字母轉大寫字母
toLowerCase():大寫字母轉小寫字母
split(分隔符,截取的長度) : 將字符串轉為數組
字符串拓展方法:
1、字符串對象.match(正則表達式) : 如果字符串中包含了正則表達式的內容,返回數組,否則,返回null,
2、字符串對象.search(正則表達式) : 類似於indexOf(),查找正則匹配的內容在字符串中第一次出現的下標位置,如果沒有找到,返回-1
3、字符串對象.replace()
4、靜態方法:
String.fromCharCode(編碼):將編碼轉成字符
靜態方法:格式 構造函數.方法 String.fromCharCode。
對象方法:格式 對象.方法 arr.push
