1、字符串的拼接
- 連接字符串通過“+”實現
- 拼接規則:“+”兩邊都爲數字時,執行加法運算
“+”兩邊都爲字符串時,進行字符串的拼接
“+”只要有一邊爲字符串,就進行字符串的拼接
2、字符串的屬性
length:獲取字符串的長度值;字符串的長度值只可以獲取,不能修改
<script>
var str = "123" ;
var str1 = "abcde" ;
console.log(str.length);//5
str1.length = 10;
//將str1的長度值設置爲10之後,最後輸出來的結果仍然是字符串本身的長度,即5,所以字符串的length屬性值是不可以修改的
console.log(str1.length);//5
</ script>
3、字符串的方法
1> charAt(index):
傳入的參數爲索引值,返回指定位置的字符串;返回的是長度值爲1的字符串,一次只能返回一個字符串;如果沒有查找到對應位置的字符串,則返回值爲空
<script>
var str = "abcde" ;
console.log(str.charAt(1));//結果爲b(返回指定位置的字符串)
console.log(str.charAt(6)); //結果爲空(當查找不到字符串時,返回值爲空)
console.log(str.charAt("1"));//傳入的值爲字符串的數字時,先將string轉換爲number類型,再繼續查找
console.log(str.charAt("s"));//當傳入的值是不能轉化爲數字的字符串時,默認查找的是該字符串的第一個值
</ script>
2> charCodeAt(index):
返回指定位置的字符串的ASCII碼值
<script>
var str = "abcde" ;
console.log(str.charCodeAt(1));//結果爲b(返回指定位置的字符串)
console.log(str.charCodeAt(6)); //結果爲空(當傳入的索引值不在字符串的索引值範圍內時,返回值爲NaN)
console.log(str.charCodeAt("1"));//傳入的值爲字符串的數字時,先將string轉換爲number類型,再繼續查找
console.log(str.charCodeAt("s"));//當傳入的值是不能轉化爲數字的字符串時,默認查找的是該字符串的第一個值
var str1="231231231ad";
for(var i=0;i<str1.length;i++){
var n=str1.charCodeAt(i);
if(n<48 || n>57){
console.log("第"+i+"個不是數字,對應的字符是"+str1.charAt(i));
}
}//根據ASCII碼值查找不是數字的字符串
</ script>
3> fromCharCode(字符串編碼值):
根據傳入的字符編碼值返回對應的字符
ASCII值:0~9 48-57 a~z 97-122 A~Z 65~90
4> indexOf(字符串[,索引值]):
a、根據傳入的字符串,查找字符串出現的位置,返回字符串所在位置的索引值;
b、在查找字符串時。從左往右依次查找,返回的是該字符串的第一次出現的位置的索引值,查找一次,找到結果之後,將不再繼續查找;
c、查找不到對應的字符串,返回值爲-1
d、當傳入兩個參數時,第一個參數表示要查找的字符串,第二個參數表示要開始查找的位置
<script>
var str="123eddas123eqdas";
console.log(str.indexOf("123"));//查找字符串第一次出現的位置,返回值爲索引值
console.log(str.indexOf("d"));//查找的字符串第一次出現之後,不再繼續往後查找
console.log(str.indexOf("a",8));//第二個參數表示開始查找的索引值
console.log(str.indexOf());//什麼也不輸入時,默認找不到,返回值爲-1
console.log(str.indexOf("123",-1));//當傳入的第二個參數爲負數時,表示從右往左依次查找
console.log(str.indexOf("a",30));//傳入的索引值超出字符串的額長度時,返回值爲-1,表示找不到
</script>
5> lastIndexOf(字符串[,索引值] ):
a、根據傳入的字符串,從右往左依次查找,返回值爲索引值,查找的是字符串第一個出現的位置
b、查找不到對應的字符串,返回值爲-1;傳入的值爲負數時,返回值爲-1,表示找不到
c、當傳入兩個參數時,第一個參數表示要查找的字符串,第二個參數表示要開始查找的位置
<script>
var str = "skadholkejqpoeip";
console.log(str.lastIndexOf("o"));//從右往左依次查找,返回第一次出現的索引值
console.log(str.lastIndexOf("o",2));//第二個參數表示開始查找的索引值
console.log(str.lastIndexOf(-1));//傳入負數時,查不到,返回值爲-1
console .log(str.lastIndexOf( "e" ,60 ));//第二個傳入的數字的值大於字符串本身的長度時,默認返回第一次查找到字符串的位置
</script>
6、substr(start,length)
a、截取字符串,從start開始截取,截取個數爲length,返回值爲被截取的字符串
b、只傳入第一個參數時,表示從start開始截取,截取到字符串結束
< script >
var str = "abcdefgh" ;
console.log(str.substr(1 , 2)); //傳入兩個參數,從1開始,截取兩個-----bc
console.log(str.substr(3)); //從3開始,截取到結束-----defgh
console.log(str.substr(-2 ));//從最後一個開始截取,截取兩個-----gh
console.log(str.substr(-3 ,5 )); //第一個數爲負數時,第二個數不起作用-----fgh
console.log(str.substr(30));//查不到時,返回值爲空
</ script>
7、subString(start,end)
a、截取字符串,從start開始,截取到end結束,返回值爲被截取的字符串
b、只傳入第一個參數時,表示從start開始截取,截取到字符串結束
< script >
var str = "abcdefgh" ;
console.log(str.substring(1, 2)); //傳入兩個參數,從1開始,到2結束,不包括2-----b
console.log(str.substring(3)); //從3開始,截取到結束-----defgh
console.log(str.substring(-2));//不接受負數,傳入負數默認從0開始截取-----abcdefgh
console.log(str.substring(-3, 5)); //第一個數爲負數時,從0開始,截取到5-----abcde
console.log(str.substring(30));//查不到時,返回值爲空
</ script>
8、slice(start,end)
截取字符串,從start開始,截取到end結束,返回值爲被截取的字符串
< script >
var str = "abcdefgh" ;
console.log(str.slice(1, 2)); //傳入兩個參數,從1開始,到2結束,不包括2-----b
console.log(str.slice(3)); //從3開始,截取到結束-----defgh
console.log(str.slice(-2));//從最後一個查找,查找兩個-----gh
console.log(str.slice(-1, 5)); //第一個數爲負數時,第二個爲正數時,返回值爲空
console.log(str.slice(30)); //查不到時,返回值爲空
</ script>
9、split(“字符串”)
通過指定的字符將字符串分割爲數組,返回值爲數組
< script >
var str = "abcde" ;
console.log(str.split(""));//輸出結果:["a","b","c","d","e"]
</ script>
10、trim()
去除字符串的前後空格,但是無法去除字符串中間出現的空格
< script >
var str = " a bcde " ;
console .log(str.trim());//輸出結果:a bcde
</ script>
11、toLowerCase()
將所有字母都轉換爲小寫
< script >
var str = "abcASDEde" ;
console.log(str.toLowerCase());//abcasdede
</ script>
12、toUpperCase()
將所有字母都轉換爲大寫
< script >
var str = "abcde" ;
console.log(str.toUpperCase());//ABCDE
</ script>