(1) str.length
=> 返回字符串的長度(字符串屬性
)javascript
var str = 'JavaScript'; str.length; // 10
(2) str.charAt(n)
=> 返回字符串的第n個字符,若是n不在0 ~ str.length-1之間,返回一個空字符串java
var str = 'JavaScript'; str.charAt(3); // 'a' str.charAt(10); // ''
(3) str.indexOf(substr[, start])
=> 返回 substr 在字符串 str 中首次
出現的位置,從 start 位置開始查找,若是不存在,則返回 -1。
start能夠是任意整數,默認值爲 0。若是 start < 0 則查找整個字符串(如同傳進了 0)。若是 start >= str.length,則該方法返回 -1,除非被查找的字符串是一個空字符串,此時返回 str.length正則表達式
var str = 'JavaScript'; str.indexOf('av'); // 1 str.indexOf('av',2); // -1 str.indexOf('',11); // 10 str.indexOf('',8); // 8
eg: 使用 indexOf 統計一個字符串中某個字母出現的次數數組
var str = 'To be, or not to be, that is the question.'; var count = 0; var pos = str.indexOf('e'); while (pos !== -1) { count++; pos = str.indexOf('e', pos + 1); } console.log(count); // 4
(4) str.lastIndexOf(substr[, start])
=> 返回 substr 在字符串 str 中最後
出現的位置,從 start 位置向前
開始查找,若是不存在,則返回 -1。app
"canal".lastIndexOf("a") // 3
(5) str.includes(substr[, start])
=> ES6方法
判斷 substr 是否被包含在 str 中,若是是返回true,不然返回falseui
var str = 'To be, or not to be, that is the question.'; str.includes('To be'); // true str.includes('To be', 1); // false str.includes('TO BE'); // false
(6) str.startsWith(substr[, start])
=> ES6方法
判斷 str 是不是以 substr 「開頭」的,若是是返回true,不然返回falsecode
var str = "To be, or not to be, that is the question."; str.startsWith("To be"); // true str.startsWith("not to be"); // false str.startsWith("not to be", 10); // true
(7) str.endsWith(substr[, n])
=> ES6方法
判斷 str 是不是以 substr 「結尾」的,若是是返回true,不然返回false。可選參數n表示前n個字符,默認值 str.lengthregexp
var str = "To be, or not to be, that is the question."; str.endsWith("question."); // true str.endsWith("to be"); // false str.endsWith("To be", 5); // true
(8) str.repeat(n)
=> ES6方法
返回一個新字符串,表示將str重複n次,n >= 0對象
"abc".repeat(0) // "" "abc".repeat(1) // "abc" "abc".repeat(2) // "abcabc" "abc".repeat(3.6) // "abcabcabc"
(9) str.toLowerCase()
=> 將 str 轉換爲小寫,並返回 str 的一個副本,不影響字符串自己的值索引
var str = 'JavaScript'; str.toLowerCase(); // 'javascript' console.log(str); // 'JavaScript'
(10) str.toUpperCase()
=> 將 str 轉換爲大寫,並返回 str 的一個副本,不影響字符串自己的值
var str = 'JavaScript'; str.toUpperCase(); // 'JAVASCRIPT' console.log(str); // 'JavaScript'
(11) str.trim()
=> 去除 str 開頭和結尾處的空白字符,返回 str 的一個副本,不影響字符串自己的值
var orig = ' foo '; orig.trim(); // 'foo' console.log(orig); // ' foo '
(12) str.substring(start[, end])
=> 返回從 start 到 end(不包括)之間的字符,start、end均爲非負整數
var str = 'JavaScript'; str.substring(0,4); // 'Java' str.substring(4,0); // 'Java',start > end,執行效果至關於將兩個參數調換 str.substring(4,4); // '',start == end,返回空字符串
(13) str.substr(start[, length])
=> 返回 str 中從指定位置開始到指定長度的子字符串,start可爲負值
var str = 'JavaScript'; str.substr(0,4); // 'Java' str.substr(-6,6); //'Script'
(14) str.slice(start[, end])
=> 返回從 start 到 end(不包括)之間的字符,start、end可爲負值
var str = 'The morning is upon us!'; str.slice(4, -1); // 'morning is upon us' str.slice(1, 3); // 'he'
(15) str.replace(regexp|substr, newSubStr|function)
=> 替換 str 的子字符串
var str = "Apples are round, and apples are juicy."; str.replace('apples','oranges'); // "Apples are round, and oranges are juicy." str.replace(/apples/gi, "oranges"); // "oranges are round, and oranges are juicy."
(16) str.search(regexp)
=> 查找 str 與一個正則表達式是否匹配。若是匹配成功,則返回正則表達式在字符串中首次匹配項的索引;不然,返回 -1。若是參數傳入的是一個非正則表達式對象,則會使用 new RegExp(obj) 隱式地將其轉換爲正則表達式對象
var str = 'I love JavaScript!'; str.search(/java/); // -1 str.search(/Java/); // 7 str.search(/java/i); // 7 str.search('Java'); // 7
(17) str.match(regexp)
=> 返回一個包含匹配結果的數組,若是沒有匹配項,則返回 null。若是參數傳入的是一個非正則表達式對象,則會使用 new RegExp(obj) 隱式地將其轉換爲正則表達式對象
var str = 'Boy boy, Gay gay!'; str.match(/boy/); // ["boy"] str.match(/gay/gi); // ["Gay", "gay"] str.match(/lesbian/g); // null
(18) str.split([separator][, limit])
=> 返回一個數組,分隔符 separator 能夠是一個字符串或正則表達式
var str = "Hello?World!"; str.split(); // ["Hello?World!"] str.split(''); // ["H", "e", "l", "l", "o", "?", "W", "o", "r", "l", "d", "!"] str.split('?'); // ["Hello", "World!"] str.split('',5); // ["H", "e", "l", "l", "o"]
(19) +
=> 字符串拼接,直接用加號,宇宙最強大法!