一、前言
學IT的小夥伴們都肯定很熟悉字串吧,它在我們各大語言中都有涉及,對於字串我們學過也使用過,但其中就分程度了,學的好不一定學得全,用的好不一定用得精,所以,關於字串到底有哪些方法及其使用,這一期就我們專來盤它。
二、使用字串方法的前提思想
所有的字串方法都不會改變原始字串,都會返回新的字串。字串方法只是將原始字串替換掉而已。
三、操作字串的方法
-
獲取字串長度
length 屬性返回字串的長度
-
擷取部分字串的三種方法
-
slice(start, end) 提取字串的某個部分並在新字串中返回被提取的部分:
var str = "Books, Banana, China"; var res = str.slice(7,13);
res:
Banana
注意:如果某個引數為負,則從字串的結尾開始計數;如果省略第二個引數,則該方法將裁剪字串的剩餘部分;
-
substring(start, end) 這個方法和slice()方法相同,但有一點區別:substring()不能接受負數
-
substr(start, length) 這個方法和slice()方法相似,不同之處在於第二個引數規定的是被提取部分的長度
var str = "Books, Banana, China"; var res = str.slice(7,6);
res:
Banana
注意:length屬性不能為負數
-
-
提取字串字元
-
charAt() 方法返回字串中指定下標(位置)的字串
var str = "Hello World!"; str.charAt(1); // 返回 e
-
charCodeAt() 方法返回字串中指定索引的字元 unicode 編碼:
var str = "Hello World!"; str.charCodeAt(0); // 返回 72
-
-
替換字串內容
replace("被替換的值","新值") 方法用另一個值替換在字串中指定的值
注意:預設地,replace() 方法對大小寫敏感
-
大小寫的轉化
-
toUpperCase() 把字串轉換為大寫:
var str1 = "Hello World!"; var str2 = str1.toUpperCase();
str2:
HELLO WORLD!
-
toLowerCase() 把字串轉換為小寫;**
-
-
concat() 方法
這個方法和加運算子是等效的,都是拼接字串
var str1 = "Hello" + " " + "World!"; var str2 = "Hello".concat(" ","World!");
str1/str2:
Hello World!
-
把字串轉換為陣列
split() 將字串轉換為陣列
-
查詢字串中的字串
-
indexOf() 方法返回字串中指定文字首次出現的索引(位置),即查詢字串中的第一個字元
var str = "My name is Jike,My name is XioaMing"; var pos = str.indexOf("name"); //返回3
-
lastIndexOf() 方法返回指定文字在字串中最後一次出現的索引
注意:如果未找到文字, indexOf() 和 lastIndexOf() 均返回 -1。
-
兩種方法都接受作為檢索起始位置的第二個引數
var str = "My name is Jike,My name is XioaMing"; var pos = str.indexOf("name",4); //返回19
-
search() 方法搜尋特定值的字串,並返回匹配的位置
與indexOf()相比search() 方法無法設定第二個開始位置引數。
-
宣告
該期文章參考了W3school的規範做的總結,更多內容其他規範可以去官網看看