es6這個string物件倒是擴充套件了不少方法,但是很多都是跟字元編碼相關,個人選了幾個感覺比較常用的方法;
還記得我們之前如何判斷某個字串物件是否包含特地字元的嗎?
var str='google';if(str.indexof('o')>-1)else
indexof本來只是乙個獲取字元對應位置的方法,因為找到不到會返回-1這個值,就成了判斷是否包含的方法,includes則就是判斷是否包含的直接返回布林值;
let str='google';if(str.includes('o'))else
這樣更符合語義化,indexof就是負責獲取位置,includes負責判斷包含關係;
startswith用於判斷是否位於頭部,endswith判斷是否位於尾部,可以說這兩個方法是includes方法的擴充套件;
let str='google';console.log(str.startswith('g')); //true
console.log(str.endswith('e')); //true
顧名思義,這個方法就是可以獲取字串重複n次後的方法;
let str='google';console.log(str.repeat(3)); //googlegooglegoogle
repeat方法接受乙個數字型別的引數,可以是正式也可以是小數,如果是浮點型會自動呼叫math.floor方法轉為整型;
let str='google';console.log(str.repeat(3.5)); //googlegooglegoogle
console.log(str.repeat(math.floor(3.5)));//googlegooglegoogle
引數可以為0這樣就會返回乙個空字串,但是不能為負數,否則會報錯;
let str='google';console.log(str.repeat(0)); //''
console.log(str.repeat(-3.5));//rangeerror: invalid count value
這兩個方法其實是es7標準下擴充套件的方法,作用就是自動補全;
let str='goo';str.padstart(5, 'le') // 'legoo'
str.padstart(4, 'le') // 'lgoo'
str.padend(5, 'le') // 'goole'
str.padend(4, 'le') // 'gool'
這兩個方法類似都是接受兩個引數,第乙個是補全的長度,第二個是要補充的內容,由於是es7標準的方法,現在瀏覽器還不能直接執行,可以嘗試借助babel執行;
中文網:
英文網:
ES6中字串擴充套件
for.of 遍歷字串 例如 1 for let codepoint of string 執行結果 說明 三個方法都接收兩個引數,第乙個引數為檢索的值,第二個引數為檢索的起始位置,返回布林值 例如 1 let s hello world 23 const a,b,c 4 s.startswith h...
字串的方法及ES6擴充套件
字串方法擴充套件 charat charcodeat fromcharcode slice substr substring search match replace split indexof lastindexof includes touppercase,tolowercase trim tr...
ES6 字串擴充套件
1 字串可以使用 u x的形式來表達乙個字元,x叫做字元的碼點,x的範圍是0000 ffff,超過ffff的碼點需要用兩個雙位元組表示 如果我們 u後面的16進製制的值大於ffff,我們需要加乙個大括號 u讓js正確解析。2 我們應該都了解,漢字一般都需要兩個雙位元組來表示,在js中兩個位元組佔乙個...