本文目錄一覽:
《web前端筆記7》js字符—獲取、查找、遍歷、提取、替換方法總結
(1)字符串就是零個或多個排在一起的字符。
(2)放在單引號或雙引號之中。 ‘abc’ “abc”。
(3)單引號字符串的內部,可以使用雙引號。
(4)雙引號字符串的內部,可以使用單引號。
(5)反引號“ :反引號允許跨行。
反引號允許字符串跨越多行並可以使用
${…} 在字符串中嵌入表達式。
(1)charAt 方法返回指定位置的字符,參數是從0開始編號的位置。
找一個字符串中的某個位置是那個字符串。
charCodeAt:返回字符串指定位置的 Unicode 碼點(十進制表示)
(2)[]
字符串可以被視為字符串數組,因此可以用數組的方括號運算符,用來返回某個位置的字符
但是字符串只是數組的相似性而已實際上、沒辦法改變字符串中的某個字符
length 只是返回了字符串的長度,該屬性沒辦法改變
字符串使用Unicode字符集,js內部所有的都是Unicode表示的。
JavaScript中的字符串使用的是 UTF-16 編碼。
toLowerCase() 和 toUpperCase()方法可以改變大小寫。
String對象是js原生提供的三個包裝對象之一。用來生成字符串對象。
(1)構造函數
字符串對象是一個類數組對象,很像數組,但不是真正的數組。
(2)將任意的值轉成字符
用於連接兩個字符串,返回一個新字符串,不改變原字符串。
從原字符串取出子字符串並返回,不改變原字符串。
它的第一個參數是子字符串的開始位置,
第二個參數是子字符串的結束位置(不含該位置)。
如果省略第二個參數,則表示子字符串一直到原字符串結束。
用於從原字符串取出子字符串並返回,不改變原字符串,跟slice方法很相像。
它的第一個參數表示子字符串的開始位置,
第二個位置表示結束位置(返回結果不含該位置)
如果省略第二個參數,則表示子字符串一直到原字符串結束。
區別:slice 和 substring的區別?
slice:
如果參數是負值,表示從結尾開始倒數計算的位置,即該負值加上字符串長度。
如果第一個參數大於第二個參數(正數情況下),slice()方法返回一個空字符串。
substring:
如果第一個參數大於第二個參數,substring方法會自動更換兩個參數的位置。
如果參數是負數,substring方法會自動將負數轉為0。
由於這些規則違反直覺,因此不建議使用substring方法,應該優先使用slice。
總結:獲取子字符串,使用 slice 或 substring。
用於確定一個字符串在另一個字符串中第一次出現的位置,
返回結果是匹配開始的位置。如果返回-1,就表示不匹配。
indexOf方法還可以接受第二個參數,表示從該位置開始向後匹配。
lastIndexOf
lastIndexOf方法的用法跟indexOf方法一致,主要的區別是lastIndexOf從尾部開始匹配,indexOf則是從頭部開始匹配。
總結:查找子字符串時,使用 indexOf 或 includes/startsWith/endsWith 進行簡單檢查。
endsWith 用來判斷當前字符串是否是以另外一個給定的子字符串“結尾”的,根據判斷結果返回 true 或 false。
用於去除字符串兩端的空格,返回一個新字符串,不改變原字符串。
toLowerCase方法用於將一個字符串全部轉為小寫,
toUpperCase則是全部轉為大寫。
它們都返回一個新字符串,不改變原字符串
split方法按照給定規則分割字符串,返回一個由分割出來的子字符串組成的數組。
如果分割規則為空字符串,則返回數組的成員是原字符串的每一個字符。
如果省略參數,則返回數組的唯一成員就是原字符串。
split方法還可以接受第二個參數,限定返回數組的最大成員數。
返回一個新字符串,表示將原字符串重複n次。
字符串補全長度的功能。如果某個字符串不夠指定長度,
會在頭部或尾部補全。padStart()用於頭部補全,padEnd()用於尾部補全。
trimStart()消除字符串頭部的空格,
trimEnd()消除尾部的空格。
返回一個由替換值(replacement)替換部分或
所有的模式(pattern)匹配項後的新字符串。
模式可以是一個字符串或者一個正則表達式,
替換值可以是一個字符串或者一個每次匹配都要調用的回調函數。
如果pattern是字符串,則僅替換第一個匹配項.
web前端筆記4-有講 如果感興趣、請參考之前文章
JS字符串截取常用方法
字符串截取常用的幾種方法:
start: 必需。非負的整數,(第一個元素的索引為 0)。
stop: 可選。一個非負的整數,比要提取的子串的最後一個字符在 stringObject 中的位置多 1。
如果不傳,那麼返回到字符串的結尾。
let str = ‘helloword’;
str.substring(1,5); // ‘ello’
截取字符串從第2位字符開始截取到第6位(包括第2位,不包括第6位)共四個字符
str.substring(2,-5); // ‘he’
實際上是substring(2,0),負數都轉換為0, substring 總是把較小的數作為起始位置
相當於 substring(0,2) 從第一位開始截取到第三位(包括第一位,不包括第三位)
str.substring(2);//lloword
只傳一個參數則以傳遞的位數位為起點截取到字符串的結尾
start: 起始位置,(第一個元素的索引為 0)。
length: 要截取得長度
str.substr(1,5); // ellow
從第2位開始截取長度為5的字符串
str.substr(-3,2); //or
從倒數第三位開始向後截取兩位
str.substr(1); //elloword
第二個參數不傳測截取到字符串的最後
start : 整數,指定從哪裡開始選擇(第一個元素的索引為 0)。
end: 整數,指定結束選擇的位置
str.slice(1,3)// el
從第二位截取到第三位 共兩個字符 不包含結束位置的第四位
str.slice(1) // elloword
第二個參數不傳則截取到字符的最後一位,
str.slice(-1); //d
傳負數則從字符的結尾開始截取字符
js字符串拆分?
字符串的拆分可以使用函數:split(),功能:使用一個指定的分隔符把一個字符串分割存儲到數組
例子:
str=”jpg|bmp|gif|ico|png”;
arr=theString.split(“|”);
//arr是一個包含字符值”jpg”、”bmp”、”gif”、”ico”和”png”的數組
擴展資料
其他的截取函數的知識點
1、函數:substring()
(1)定義:substring(start,end)表示從start到end之間的字符串,包括start位置的字符但是不包括end位置的字符。
(2)功能:字符串截取,比如想從”MinidxSearchEngine”中得到”Minidx”就要用到substring(0,6)
(3)例子:
var src=”images/off_1.png”;alert(src.substring(7,10));//彈出值為:off
2、函數:substr()
(1)定義:substr(start,length)表示從start位置開始,截取length長度的字符串。
(2)功能:字符串截取
(3)例子:
var src=”images/off_1.png”;alert(src.substr(7,3));//彈出值為:off
參考資料來源:MDN web docs 官方網站-函數
js中字符串的常見方法
首先創建一個字符串,創建字符串的方法有兩種:
1.字面量:var str = “abc123efg456”;
2.構造函數:var str = newString(“abc123efg456”);
其次,需要注意的是,javascript的字符串是不可變的,String類定義的方法都不可以改變字符串內容。若是需要通過方法改變字符串的內容,需要將返回值重新賦值給原來的字符串。如:str = str.toUpperCase();
下面,介紹比較常用的字符串的方法:
var str = “1abc123abc456abc”;
功能:返回指定的字符串值在字符串中首次出現的位置。
參數:s為要檢索的字符,必需;n為可選的字符參數,規定字符串檢索的位置。
demo:
var index1 = str.indexOf(“a”);
var index2 =str.indexOf(“a”,8);
var index3 =str.indexOf(“a”,14);
console.log(index1); // 1
console.log(index2); // 13
console.log(index3); // -1 從檢索的位置檢索不到字符,返回-1
功能:返回一個指定的字符串值最後出現的位置,在一個字符串中的指定位置從後向前搜索。
參數:s為要檢索的字符,必需;n為可選的字符參數,規定字符串檢索的位置。
demo:
var index1 =str.lastIndexOf(“a”);
var index2 =str.lastIndexOf(“a”,11);
var index3 =str.lastIndexOf(“a”,0);
console.log(index1); // 13
console.log(index2); // 7
console.log(index3); // -1 從檢索的位置檢索不到字符,返回-1
功能:返回指定位置的字符。
參數:n表示字符串中某個位置的索引,不寫默認為第0個字符。
demo:
var s = str.charAt(3);
console.log(s); // c
功能:返回指定位置的字符的Unicode編碼。
參數:n表示字符串中某個位置的索引,可以沒有參數,默認是索引為0的參數。
demo:
var s = str.charCodeAt(3);
console.log(s); // 99
注:c的unicode編碼為99。
注意:charAt(n)方法和charCodeAt(n)方法類似,前者返回的是字符,後者返回的是字符的unicode編碼。
功能:將編碼轉成字符方法。
參數:十進制和十六進制,不支持unicode編碼。
demo:
var s1 =String.fromCharCode(“0x56fd”);
var s2 = String.fromCharCode(22269);
console.log(s1); //國
console.log(s2); //國
注:“國”的十六進制編碼是56fd,十進制是22269。
功能:根據指定位置,截取子串,從m到n,不包括n。
參數:m,n為索引。
demo:
var s = str.slice(2,7);
console.log(s); // bc123
功能:根據指定位置,截取子串,從m到n,不包括n。
參數:m,n為索引。
demo:
var s = str.substring(2,7);
console.log(s); // bc123
功能:根據指定位置,截取子串,從m位置取,共取n個。
參數:m,n為索引。
demo:
var s = str.substr(2,7);
console.log(s); // bc123ab
功能:字符串替換。
參數:oldstr為需要被替換的字符,newstr為替換的字符。
demo:
var s =str.replace(“a”,”l”);
console.log(s); // 1lbc123abc456abc
注意:每次只能替換一個符合條件的字符。
功能:分割字符,返回成為數組。
參數:”s”為分割的字符。
demo1:
var arr1 = str.split(“b”);
console.log(arr1); // [“1a”, “c123a”,”c456a”, “c”]
demo2:
var arr2 = str.split(); //[“1abc123abc456abc”]
console.log(arr2);
demo3:
var arr3 = str.split(“”);
console.log(arr3); // [“1″,”a”, “b”, “c”, “1”, “2”,”3″, “a”, “b”, “c”, “4”,”5″, “6”, “a”, “b”, “c”]
注意:參數不寫的時候,返回原字符串組成的數組;參數為空字符的時候,將每個字符分割,返回一個數組
功能:檢索字符串中指定的子字符串,返回第一個與字符串匹配的索引值。
參數:需要被檢索的字符串。
demo:
var s1= str.search(“abc”);
var s2 = str.search(“efg”);
console.log(s1); // 1
console.log(s2); // -1
注:如果沒有找到任何匹配的子串,則返回-1。
功能:在字符串內檢索指定的值,匹配到就返回指定的字符值。
參數:需要被檢索的字符串。
demo:
var s1= str.match(“abc”);
var s2 = str.match(“efg”);
console.log(s1); // [“abc”,index: 1, input: “1abc123abc456abc”, groups: undefined]
console.log(s2); // null
注:該方法類似indexOf()和lastIndexOf(),但是它返回指定的值,沒有就返回null
功能:連接兩個或多個字符串,返回連接後的字符串。
參數:需要連接的字符串。
demo:
var str1=”abc “;
var str2=”123″;
console.log(str1.concat(str2)); // “abc 123”
提示:如果需要拼接字符串,用運算符“+”更簡單。
功能:把字符串轉換為小寫。
參數:無
demo:
var str = “ABC abc”;
console.log(str.toLowerCase()); // abcabc
功能:把字符串轉換為大寫。
參數:無
demo:
var str = “ABC abc”;
console.log(str.toUpperCase()); // ABCABC
功能:把字符串顯示為大號字體。
參數:無
demo:
var s = str.big();
document.write(str+””);
document.write(s);
功能:把字符串顯示為小號字。
參數:無
demo:
var s = str.small();
document.write(str+””);
document.write(s);
功能:把字符串顯示為粗體。
參數:無
demo:
var s = str.bold();
document.write(str+””);
document.write(s);
功能:把字符串顯示為斜體。
參數:無
demo:
var s = str.italics();
document.write(str+””);
document.write(s);
功能:將字符以指定的顏色顯示。
參數:顏色名(red)、RGB 值(rgb(255,0,0))或者十六進制數(#FF0000)。
demo:
var s = str.fontcolor(“red”);
document.write(str+””);
document.write(s);
功能:將字符以指定的字號顯示。
參數:size參數必須是從1和7之間的數字,1表示小的字號,7表示最大的字號。
demo:
var s = str.fontsize(7);
document.write(str+””);
document.write(s);
功能:把字符串顯示為超鏈接。
參數:鏈接的URL。
demo:
var s =str.link(“”);
document.write(str+””);
document.write(s);
功能:把字符串加字符串顯示。
參數:無
demo:
var s = str.strike();
document.write(str+””);
document.write(s);
以上是對字符串方法的整理,如有修改、補充,後續會更新。
文中如果紕漏,錯誤,不合理,描述不清晰,不準確等問題,歡迎大家留言指正…
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/247507.html