js數組與字符串經常用的幾種簡單的方法


符串常用方法:

substring(start開始位置的索引,end結束位置索引) 截取的位置不包含結束位置的字符,只寫一個參數表示從開始位置截取到最后

var str='abcdefg';
str.substring(1) //得到bcdefg str.substring(1,3) //得到bc
 
輸入負值時將負值變為0,哪個較小作為開始位置
str.substing(-1,1) =>str.substring(0,1) //a
str.substring(1,-2) =>str.substring(0,1) //a

slice(start開始位置索引,end結束位置索引) 基本和substring相似,區別在參數為負數。

var str='abcdefg';
str.slice(1) //bcdefg str.substring(1,3) // bc
 
輸入負值時 值與字符串的長度相加
str.slice(-1) =>str.slice(6) //g
str.slice(1,-2) =>str.slice(1,5) //bcde
str.slice(-2,-1)=>str.slice(5,6) //f
值絕對值大於字符串的長度時變為 0
str.slice(-22) =>str.substring(0) //abcdefg
第二個參數絕對值大於字符串的長度時,返回’’

substr(start開始位置索引,end需要返回的字符個數)

var str='abcdefg';
str.substr(1) //bcdefg str.substr(1,1) //b
 
輸入負值時 start參數與字符串的長度相加 ,end為負時參數變為0

str.substr(-1) =>str.substr(6)//g
str.substr(-2,-3) // ''
 
charAt(index) 方法返回指定索引位置處的字符。如果超出有效范圍(0與字符串長度減一)的索引值返回空字符串.

var str='abcdefg';
str.charAt(2) // c
 
indexOf(string) 返回String對象內第一次出現子字符串位置。如果沒有找到子字符串,則返回-1。

var str='abcdefga'
str.indexOf('a') // 0
str.indexOf('h') //-1
 
lastIndexOf(string) 倒敘查找
返回String對象內第一次出現子字符串位置。如果沒有找到子字符串,則返回-1。

var str='abcdefga'
str.lastIndexOf('a') // 7
 
split(str) 將字符串以參數分割為數組

var str='abcadeafg'
str.split('a') //["", "bc", "de", "fg"]
 
toLowerCase方法返回一個字符串,該字符串中的字母被轉換成小寫。

toUpperCase方法返回一個字符串,該字符串中的所有字母都被轉換為大寫字母。

match() – 方法可在字符串內檢索指定的值,或找到一個或多個正則表達式的匹配

search 方法返回與正則表達式查找內容匹配的第一個字符串的位置。

replace 用來查找匹配一個正則表達式的字符串,然后使用新字符串代替匹配

數組常用的方法
push 添加到最后 返回添加后的數組

unshift 添加到最前面 返回添加后的數組

shift 刪除(從前面) 返回處理后的數組

pop 刪除最后一項 返回處理后的數組

reverse 數組翻轉 返回處理后的數組

join 數組轉化為字符串

var arr=[1,2,3,4,5], str=arr.join('--');
console.log(str); // 1--2--3--4--5 以join內的參數切割數組
console.log(arr); // [1,2,3,4,5] 原數組未變
 
slice(start,end) 截取數組 從start(開始) 到end(結束 不包含)
返回新數組,原數組不變

var arr=[1,2,3,4,5],new=arr.slice(2,4);
console.log(new); // [3,4]
console.log(arr); // [1,2,3,4,5]
 
concat 數組合並

splice(開始下標,個數,ele1,ele2…) 剪接數組
(1).一個參數 從參數位置截取 填寫負數類似上面str slice 返回截好的數組 原數組變化

var arr=[1,2,3,4,5];
console.log(arr.splice(1)); // [2,3,4,5]
console.log(arr); // [1]
console.lgo(arr.splice(-1)) // [5]
 
(2).二個參數 截取 (開始位置,個數) 返回截好的數組 原數組變化

var arr=[1,2,3,4,5];
console.log(arr.splice(1,3)); // [2,3,4]
console.log(arr) // [1,5]
arr.splice(0,1) =>arr.shift()
arr.splcie(arr.length-1,1) =>arr.pop()
 
(3).添加 原數組增加

var arr=[1,2,3,4,5];
console.log(arr.splice(1,0,13)); // []
console.log(arr); // [1,13,2,3,4,5]
 
(4).替換

var arr=[1,2,3,4,5];
console.log(arr.splice(1,2,'a','b')) // [2,3]
console.log(arr); // [1,'a','b',4,5]
arr.splice(0,0,1) =>arr.unshift(1);
arr.splice(arr.length,0,1) => arr.push(1)
 
arr.forEach(item,index,array){} 遍歷,循環 類似jquery的each
其中的item參數是數組中的內容,index為其索引,array表示數組本身

var arr=[1,2,3,4,5];
arr.forEach(function(item,index,array){
})
 
map方法 映射 用法和forEach類似

var men=[
{'name':1,'age':12},
{'name':2,'age':22},
{'name':3,'age':33}
],
age=men.map(function(item){
return item.age;
})
 rr.sort 排序

var arr=[1,2,22,11,33,3,5,4];
console.log(arr.sort()) // [1,11,2,22,3,33,4,5]

默認情況下sort方法是按ascii字母順序排序的,而非我們認為是按數字大小排序

arr.sort(function(a,b){ return a-b})

a-b從小到大 b-a從大到小

我覺得吧還是基礎最重要~~
————————————————
版權聲明:本文為CSDN博主「Hello My girl.」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/sslcsq/article/details/103858642


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM