1、數組API正則表達式
用鏈接符把數組裏面的元素鏈接成字符串。數組
arr.join("")能無縫鏈接。dom
2.拼接:arr.concat("a","b",arr1)函數
強調:(1)不會修改原數組,返回新數組。code
(2)concat方法中的數組會被打散爲單個元素再拼接。排序
3.截取:arr.slice(start[,end])字符串
強調:(1)不會修改原數組,返回新的子數組。string
(2)含頭不含尾。it
(3)省略第二個參數表示從start位置開始一直截取到末尾。io
(4)支持負數,表示倒數第幾個。
4. 刪除、插入、替換:arr.splice(start,n[,value1,value2...])
強調:(1)直接修改原數組。
(2)返回全部被刪除元素組成的子數組。
(3)若是是插入,刪除了0個數,那麼從start位置開始以及以後的元素會被順移。
5. 翻轉數組:arr.reverse()
強調:(1)直接修改原數組。
6.數組排序:arr.sort()
強調:(1)直接修改原數組。
(2)默認按照數組元素第一位的ASCII碼從小到大排列。
(3)能夠設置下列的比較器函數來控制升序,降序或者打亂。
(4)arr.sort(function(a,b){return a-b;}); 升序(只限數組中是數字或者數字字符串)。
(5)arr.sort(function(a,b){return b-a;}); 降序(只限數組中是數字或者數字字符串)。
(6)arr.sort(function(){
return Math.random()>.5 ? 1 : -1;
});隨機打亂數組(數組中能夠是任何數據類型)
強調:(1)返回value在數組中的位置,沒有找到返回-1。
8. 是否有符合的:arr.some(function(value,index,arr){
return value > 7;
})
強調:(1)判斷數組中有沒有符合條件的元素,只要遇到符合條件的就退出循環。
(2)返回boolean值。
9.是否都符合:arr.every(function(value,index,arr){return value > 7;})
強調:(1)判斷數組中的元素是否都符合條件。
(2)返回boolean值。
10. 過濾數組:arr.filter(function(value,index,arr){return value > 7;})
強調:(1)過濾數組,返回符合條件的元素組成的新數組。
11. 循環數組,無返回值:arr.forEach(function(value,index,arr){})
12. 循環數組,有返回值:arr.map(function(value,index,arr){})
13.彙總:arr.reduce(function(prev,value,index,arr){
return prev + value;
})
返回數組裏面全部元素相加的和。prev是以前那些元素的和。
14. 數組轉字符串:String(arr)或arr.toString()
將數組中的元素用逗號鏈接成字符串,相似於arr.join(",")。
15. 開頭入棧:arr.unshift(value)
在數組的最開頭插入元素。
強調:(1)修改原數組。
(2)返回新數組的length。
16. 開頭出棧:arr.shift()
彈出數組最開頭的元素。
強調:(1)修改原數組。
(2)返回被彈出的元素。
17. 結尾入棧:arr.push(value1[,value2,arr1])
在數組末尾追加元素。
強調:(1)修改原數組。
(2)返回新數組的length。
(3)追加進去的數組不會被打散。
18. 結尾出棧:arr.pop()
彈出數組最末尾的元素。
強調:(1)修改原數組。
(2)返回被彈出的元素。
2、字符串API
1. 截取:str.slice(from[,end])或str.substring(start[,end])或str.substr(start[,length])
強調:(1)slice和substring用法相似,只是slice支持負數,而substring的負數會被轉換成0,而後截取0和start之間字符。
(2)substr的start支持負數。
2. 分割:str.split("分割符")
把字符串以分割符爲界點分割成數組。
3. 查找:str.indexOf(value[,from])或str.lastIndexOf(value[,from])
強調:(1)indexOf()只查找第一個,找不到返回-1。
4. 替換:str.replace("被替換字符","替換字符")
強調:(1)只會替換第一個,若是要替換全部符合條件的字符能夠使用正則g。
5. 拼接:str.concat(value)
把value拼接到str上,效果相似於str+value
6. 獲取指定位置字符:str.charAt(index)或str[index]
7. 去掉字符串先後空格:str.trim()
8. 字符串轉ASCII:str.charCodeAt(index)
9. ASCII轉字符串:String.fromCharCode(Unicode)
10. 轉大寫字母:str.toUpperCase()
11. 轉小寫字母:str.toLowerCase()
3、4種字符串「查找」方法的對比
1. str.indexOf(value[,from])
強調:(1)只能查找第一個匹配的位置,沒找到返回-1,可用循環改變from查找全部。
2. str.search(reg)
強調:(1)僅判斷有沒有。
(2)只返回第一個匹配的位置,沒找到返回-1。
(3)支持正則(不支持g,支持i)。
3. str.match(reg)
強調:(1)返回全部正則匹配的字符串組成的數組,沒找到返回null。
(2)支持正則,正則表達式必須帶g,才能返回全部匹配的字符串。
4. reg.exec(str)
既能找到關鍵詞的位置,又能得到內容。
強調:(1)支持正則,找不到返回null。
(2)若要查找全部正則必須加g,不加g只能查找第一個,並且要放進循環裏面。