js中字串的方法

2021-09-24 06:33:27 字數 3541 閱讀 3610

1.charat 返回指定索引出的字元

var str='abcd';

var a=str.charat(0);

console.log(a); //'a'

console.log(str); //'abcd'

2.charcodeat 返回指定索引出的unicode字元

str.charcodeat(0);   //97

3.indexof  判斷乙個字元第一次出現在某個字串的索引,如果包含返回它的索引,如果不包含返回-1.

str.indexof('a');     //0

str.indexof('e');     //-1

4.lastindexof 判斷乙個字元最後一次出現在某個字串的索引,如果包含返回它的索引,如果不包含返回-1.

str.lastindexof('b');   //1

str.lastindexof('e');   //-1

5.concat拼接2個字串,返回乙個新字串,對原有字串沒有任何改變。

var str='qwe';

var str1='abc';

var str2=str.concat(str1);

console.log(str2);//"qweabc"

6.substr(n,m) 從索引n開始,擷取m個字元,將擷取的字元返回,對原字串沒有任何改變。

var b=s.substr(1,1)

console.log(b);  //'w'

7.substring(n,m)   從索引n開始,擷取到索引m,不包括m.將擷取的字元返回,對原字串沒有任何改變.

var ee=str.substring(1,3);

console.log(ee);  //"bc"

8.slice(n,m)   從索引n開始,擷取到索引m,不包括m.將擷取的字元返回,對原字串沒有任何改變.

var aa=str.slice(0,3);

console.log(aa);//'abc'

9.split  用指定字元分割字串,返回乙個陣列.對原字串沒有任何改變。

var a=str.split('');

console.log(a);  //["a", "b", "c", "d"]

10.replace('a',1);  替換指定字元,返回替換後新的字串,對原有字串有改變。(第乙個引數可以是正規表示式) 只能替換一次 ,配合正則模式修飾符g使用

var str='aaaaee';

var reg=/a/g;

str.replace(reg,1);   //"1111ee"

11.match() 可在字串內檢索指定的值,或找到乙個或多個正規表示式的匹配。把找到的字元放在陣列裡,返回乙個陣列。

var str='aaaa3ed33';

var reg=/a/g;

str.match(reg);  //["a", "a", "a", "a"]

12.search() 方法用於檢索字串中指定的子字串,或檢索與正規表示式相匹配的子字串。

es6新增加的方法

1.codepointat()  能夠正確處理4個位元組儲存的字元,返回指定索引出乙個字元的碼點。codepointat方法是測試乙個字元由兩個位元組還是由四個位元組組成的最簡單方法。

var s = '?a';

s.codepointat(0) // 134071

s.codepointat(1) // 57271

codepointat方法返回的是碼點的十進位制值,如果想要十六進製制的值,可以使用tostring方法轉換一下。

var s = '?a';

s.codepointat(0).tostring(16) // "20bb7"

s.codepointat(2).tostring(16) // "61"不能識別32位的utf-16字元

配合for...of迴圈使用,因為它會正確識別32位的utf-16字元。

var s = '?a';

for (let ch of s)

// 20bb7

// 61

2.codepointat用於從碼點返回對應字元,但是這個方法不能識別32位的utf-16字元(unicode編號大於0xffff)。

string.fromcodepoint(0x20bb7)

// "?"

string.fromcodepoint(0x78, 0x1f680, 0x79) === 'x\ud83d\ude80y'

// true

3.for..of  字串的遍歷器介面

for (let codepoint of 'foo')

// "f"

// "o"

// "o"

4.at()  返回指定索引處的字元

'abc'.at(0) // "a"

'?'.at(0) // "?"

5.includes():返回布林值,表示是否找到了引數字串。這三個方法都支援第二個引數,表示開始搜尋的位置。

6.startswith():返回布林值,表示引數字串是否在源字串的頭部。這三個方法都支援第二個引數,表示開始搜尋的位置。

7.endswith():返回布林值,表示引數字串是否在源字串的尾部。這三個方法都支援第二個引數,表示開始搜尋的位置。

var s = 'hello world!';

s.startswith('world', 6) // true

s.endswith('hello', 5) // true

s.includes('hello', 6) // false

8.repeat()  方法返回乙個新字串,表示將原字串重複n次。

'x'.repeat(3) // "***"

'hello'.repeat(2) // "hellohello"

'na'.repeat(0) // ""

9.padstart(),padend()字串補全長度的功能

padstart()用於頭部補全

padend()用於尾部補全

padstart和padend一共接受兩個引數,第乙個引數用來指定字串的最小長度,第二個引數是用來補全的字串。

'x'.padstart(5, 'ab') // 'ababx'

'x'.padstart(4, 'ab') // 'abax'

'x'.padend(5, 'ab') // 'xabab'

'x'.padend(4, 'ab') // 'xaba'

如果原字串的長度,等於或大於指定的最小長度,則返回原字串。

'***'.padstart(2, 'ab') // '***'

'***'.padend(2, 'ab') // '***'

如果用來補全的字串與原字串,兩者的長度之和超過了指定的最小長度,則會截去超出位數的補全字串。

'abc'.padstart(10, '0123456789')

如果省略第二個引數,預設使用空格補全長度。

'x'.padstart(4) // '   x'

'x'.padend(4) // 'x   '

JS中字串方法

lang en charset utf 8 字串方法title head var str 王hello world var str1 newstring 0123456789 console.log str.length console.log str.charat 1 查詢索引為1的位置的字母 c...

JS中的字串方法

string型別 string型別是字串的物件包裝型別 字串的length方法 1.字元方法 charat charcodeat 2 字串操作方法 字串的拼接 concat 方法,一般用 號拼接字串 還有三個擷取字串的方法,slice substring substr 當傳入的引數是正數的時候 sl...

JS中字串常用方法

js中字串常用方法 1 tolowercase 把字串轉為小寫,返回新的字串。var str hello world var str1 str.tolowercase console.log str1 hello world 2 touppercase 把字串轉為大寫,返回新的字串。var str ...