標籤:reason last news def split lower 索引 結束 運算式
字串
字串就是一個或多個排列在一起的字元,放在單引號或雙引號之中。
‘abc‘
"abc"
length屬性
js裡的字串類似於數組,都是一個一個字元拼湊在一起組成的,因此可以用length屬性取得字串的長度
var str = "hello"
str.length; // 5
字串常用的一些方法
1. charAt()
1 str.charAt(n)
=> 返回字串的第 n 個字元,如果不在 0~str.length-1之間,則返回一個Null 字元串。
1 var str = "javascript";2 str.charAt(2); //‘v‘3 str.charAt(12); //‘
2. indexOf()
1 indexOf(substr[,start])
=> 返回 substr 在字串 str 中首次出現的位置,從 start 位置開始尋找,如果不存在,則返回 -1。
start可以是任意整數,預設值為 0。如果 start < 0 則尋找整個字串(如同傳進了 0)。如果 start >= str.length,則該方法返回 -1,除非被尋找的字串是一個Null 字元串,此時返回 str.length.
1 var str = "javascript";2 str.indexOf(‘s‘); // 13 str.indexOf(‘s‘,6); // -14 str.indexOf(‘‘,11); // 105 str.indexOf(‘‘,8); // 8
3. lastIndexOf()
1 lastIndexOf(substr[,start])
= > 返回 substr 在字串 str 中最後出現的位置,從 start 位置 向前開始尋找,如果不存在,則返回 -1。
1 ‘lastindex‘.lastIndexOf(‘a‘); // 1
4. substring()
1 str.substring(start[, end])
= > 返回從 start 到 end(不包括)之間的字元,start、end均為 非負整數。若結束參數(end)省略,則表示從start位置一直截取到最後。
1 var str = ‘abcdefg‘;2 str.substring(1, 4); //"bcd"3 str.substring(1); // "bcdefg"4 str.substring(-1); //"abcdefg" 傳入負值時會視為0
5. slice()
1 str.slice(start[,end])
= > 返回從 start 到 end (不包括)之間的字元,可傳負值
1 var str = ‘this is awesome‘; 2 str.slice(4, -1); //" is awesom"
6. substr()
1 str.slice(start[,end])
= > 返回 str 中從指定位置開始到指定長度的子字串,start可為負值
1 var str = "Just give me a reason";2 str.substr(5, 10); // "give me a "3 str.substr(-4, 2); // "as"
7. replace()
1 str.replace(regexp|substr, newSubStr|function)
= > 替換 str 的子字串
1 var str = "do you love me"; 2 str.replace(‘love‘,‘hate‘); // "do you hate me"
8. search()
1 str.search(regexp)
= > 尋找 str 與一個Regex是否匹配。如果匹配成功,則返回Regex在字串中最初相符項的索引;否則,返回 -1。如果參數傳入的是一個非Regex對象,則會使用 new RegExp(obj) 隱式地將其轉換為Regex對象
1 var str = ‘I love JavaScript!‘;2 str.search(/java/); // -13 str.search(/Java/); // 74 str.search(/java/i); // 75 str.search(‘Java‘); // 7
9. match()
1 str.match(regexp)
= > 返回一個包含匹配結果的數組,如果沒有匹配項,則返回 null。如果參數傳入的是一個非Regex對象,則會使用 new RegExp(obj) 隱式地將其轉換為Regex對象
1 var str = ‘Javascript java‘;2 str.match(/Java/); // ["Java"]3 str.match(/Java/gi); // ["java", "Java"]4 str.match(/ab/g); // null
10. split()
1 str.split([separator][, limit])
= >返回一個數組,分隔字元 separator 可以是一個字串或Regex
1 var str = "Hello?World!";2 str.split(); // ["Hello?World!"]3 str.split(‘‘); // ["H", "e", "l", "l", "o", "?", "W", "o", "r", "l", "d", "!"]4 str.split(‘?‘); // ["Hello", "World!"]5 str.split(‘‘,5); // ["H", "e", "l", "l", "o"]
11. trim()
1 str.trim()
= > 去除 str 開頭和結尾處的空白字元,返回 str 的一個副本,不影響字串本身的值
1 var str = ‘ abc ‘;2 str.trim(); // ‘abc‘3 console.log(str); // ‘ abc ‘
12. toLowerCase()
1 str.toLowerCase()
= > 將 str 轉換為小寫,並返回 str 的一個副本,不影響字串本身的值
1 var str = ‘JavaScript‘;2 str.toLowerCase(); // ‘javascript‘3 console.log(str); // ‘JavaScript‘
13. toUpperCase()
1 str.toUpperCase()
= > 將 str 轉換為大寫,並返回 str 的一個副本,不影響字串本身的值
1 var str = ‘JavaScript‘;2 str.toUpperCase(); // ‘JAVASCRIPT‘3 console.log(str); // ‘JavaScript‘
Javascript字串常用方法詳解