重學JavaScript之字符串方法

一、字符串長度(length)正則表達式

var str = 'abcdefg';
console.log(str.length); //7複製代碼

二、查找字符串中的字符串數組

 1)indexOf()   返回字符串中指定文本首次出現的索引(位置)bash

var str = 'abcdefg';
str.indexOf('d')        //3複製代碼

2) lastIndexOf()   返回字符串中制定文本最後一次出現的索引(位置)編碼

var str = 'abcdefgabcd';
str.lastIndexOf('a')     //7複製代碼

若未找到查詢的文本,兩種方法都返回-1;spa

兩種方法都接受檢索起始位置所謂第二個參數code

var str = "The full name of China is the People's Republic of China.";
var pos = str.indexOf("China", 18);    //51
複製代碼

var str = "The full name of China is the People's Republic of China.";
var pos = str.lastIndexOf("China", 50);    //17複製代碼

3) 檢索字符串中的字符串(search)索引

var str = 'abcdefg';
str.search('d')        //3複製代碼

search()和indexOf()這兩個方法是類似的,可是也有不一樣點:unicode

       ①:search()方法沒法設置第二個參數字符串

       ②:indexOf()方法沒法設置更強大的搜素值(如正則表達式)string

三、提取部分字符串

1) slice()  提取部分字符串並在新字符串中返回提取的部分

   兩個參數(起始位置索引,終止位置索引)

var str = 'Apple, Banana, Mango'
str.slice(3, 10)    //le, Ban
若是某個參數爲負,則從字符串的結尾開始計數
複製代碼

2)substring()  substring方法很相似於slice方法,不一樣是substring方法不接受負數索引

var str = "Apple, Banana, Mango";
var res = str.substring(7,13);        //Banana複製代碼

3)substr()    substr() 相似於slice(),不一樣的是substr方法第二個參數是截取的字符串的長度

var str = "Apple, Banana, Mango";
var res = str.substr(7,6)       //Banana
若是首個參數爲負,則從字符串的結尾計算位置。複製代碼

若是省略第二個參數,則該 slicce()和substring(),substr() 將裁剪字符串的剩餘部分。

四、替換字符串內容

replace()方法用另外一個值替換在字符串中指定的值

var str = "I am jsKai";
str.replace("js", "jishu");    //I am jishuKai複製代碼

replace()方法對大小寫敏感,若想對大小寫不敏感,則需用正則表達式的/i

var str = "I am jsKai";
str.replace("/JS/I", "jishu");    //I am jishuKai複製代碼

五、大小寫轉換

經過 toUpperCase() 把字符串轉換爲大寫,toLowerCase() 把字符串轉換爲小寫:

var text1 = "Hello World!";       // 字符串
text1.toUpperCase();  // HELLO WORLD

var text2 = "Hello World!";
text2.toLowerCase();    //hello world複製代碼

六、concat()方法:鏈接2個或多個字符串

var text1 = "Hello";
var text2 = "World";
text3 = text1.concat(" ",text2);    //Hello world複製代碼

var text = "Hello" + " " + "World!";
var text = "Hello".concat(" ","World!");複製代碼

這兩行是等效的

七、trim() 刪除字符串兩邊的空白符

var str = " Hello World! ";
alert(str.trim());        // Hello World!複製代碼

Internet Explorer 8 或更低版本不支持 trim() 方法。

如需支持 IE 8,您可搭配正則表達式使用 replace() 方法代替:

var str = " Hello World! ";
alert(str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ''));複製代碼

八、提取字符串字符

1)charAt()方法返回字符串中指定下標(位置)的字符串:

var str = "HELLO WORLD";
str.charAt(0);            // 返回 H複製代碼

2)charCodeAt() 方法返回字符串中指定索引的字符 unicode 編碼:

var str = "HELLO WORLD";

str.charCodeAt(0);         // 返回 72複製代碼

九、把字符串轉換爲數組(split)

var txt = "a,b,c,d,e";   // 字符串
txt.split(",");          // 用逗號分隔   ["a", "b", "c", "d", "e"]
txt.split(" ");          // 用空格分隔   ["a,b,c,d,e"]
txt.split("|");          // 用豎線分隔   ["a,b,c,d,e"]複製代碼

若是分隔符是 "",被返回的數組將是間隔單個字符的數組:

var txt = "Hello";       // 字符串
txt.split("");           // 分隔爲字符    //["H", "e", "l", "l", "o"]複製代碼
相關文章
相關標籤/搜索