es6 字串與數值的拓展

2021-08-30 17:55:00 字數 3354 閱讀 7486

字串的拓展:

es5提供了indexof方法,可返回某個指定的字串值在字串中首次出現的位置。而es6中則又新增了三個方法。

一:1、includes方法返回乙個布林值,如果查詢的字元在字串中被找到了,返回true,否則返回false。

console.log('abcd'.includes('b')) //true
2、startswith方法用於判斷某個字元是否在字串的開頭位置,是返回true,否則返回false

console.log('abcd'.startswith('a')) //true
3、endswith方法用於判斷某個字元是否出現在字串的結束位置,是返回true,否則返回false

console.log('abcd'.endswith('d')) //true
這三個方法都接受第二個引數,表示開始搜尋的位置

1、console.log('abcd'.includes('b',2)) //false  從c開始搜尋,結果搜尋不到b,返回false

2、console.log('abcd'.startswith('b',1)) //true 從b開始搜尋,相對於bcd來說,b處於開頭位置,返回true

3、console.log('abcd'.endswith('c',3)) //true 從d開始搜尋,相對於abc來說,c處於結束位置,返回true

二:repeat方法

repeat方法返回乙個新字串,用於重複乙個字串。

console.log('a'.repeat(2)) //aa
三:padstart和padend方法,用於補全字串。

1、padstart用於在字串的前面補全字串

console.log('x'.padstart(3,"b")) //bbx

console.log('x'.padend(3,"b")) //xbb

這個兩個方法都接受兩個引數,第二個引數用來指定字串的長度,第二個引數用填充字串。

2、如果字串沒有位置空缺,則返回原字串

console.log(『x』.padstart(1,「b」)) //x

console.log(『x』.padend(1,「b」)) //x

3、如果用於填充的字元超過指定的長度,被截斷

console.log(『x』.padstart(3,「bbbbbbb」)) //bbx

console.log(『x』.padend(3,「bbbbbbb」)) //xbb

4、如果不指定用於填充的字串,將預設使用空格填充

console.log(『x』.padstart(3)) // x

console.log(『x』.padend(3)) //x

四:字串模板

1、字串模板提供極大的方便,用反引號``定義,在反引號中,可以方便地填入變數,使用換行,單引號或雙引號。

let name = "小明"

let age = 18

console.log(`我的名字叫$,

今年$歲,我的哥哥叫"關尼僻仕"`)

結果:

我的名字叫小明,

今年18歲,我的哥哥叫"關尼僻仕"

如果需要使用反引號,需要在反引號前面用反斜桿進行轉義如:`

2、在字串模板中,變數應當填寫在${}當中,不僅是變數,還可以放入任意的表示式,可以運算,可以引用物件的屬性,可以呼叫函式。

let obj = 

function fn ()

console.log(`obj的a+obj的b=$,所以說,$`); //obj的a+obj的b=3,所以說,字串模板真的很強大

3、字串模板還能進行巢狀

console.log(字串一$); //字串一字串二

4、標籤模板

function fn (a) 

fn `123`; //列印出123

標籤模板其實是函式的一種特殊的呼叫形式,函式的引數就是跟在函式名後面的字串模板。

所以 fn123可以看成是這樣:fn(123)

當字串模板中包含變數的時候,會從字串模板中提取出多個引數。

let name = "小明"

let age = 18

function fn (arr,var1,var2)

fn `我叫$,今年$歲`;

可以看到,字串模板中的變數的值被依次傳給var1,var2,而其他的字串被包裝成乙個陣列,傳遞給arr。

可以看成是這樣fn([「我叫」, 「,今年」, 「歲」],『小明』,18);

數值的拓展:

1、isnan方法

console.log(number.isnan(nan)) //true
與es5中的isnan的區別在於,es5中的isnan方法在遇到非數值的情況下,會先把非數值轉為數值,再判斷。而es6中的isnan方法

對於非數值一律返回false,只對nan返回true。

2、parseint方法和parsefloat方法被從全域性轉移到了number物件中。

因此,es5呼叫的方法是:

parseint()

parsefloat()

es6的呼叫方法是:

number.parseint()

number.parsefloat()

3、isinteger方法,用於判斷乙個值是否為整數。

console.log(number.isinteger(25)) //true

console.log(number.isinteger(25.0)) //true

console.log(number.isinteger(25.1)) //false

4、math.sign方法,判斷乙個數值是整數還是負數,或者是0。

console.log(math.sign(10)) //1

console.log(math.sign(-10)) //-1

console.log(math.sign(0)) //0

console.log(math.sign(-0)) //-0

其他值返回nan。

ES6字串 數值 物件

es6中字串 數值 物件 一 字串 1.includs 判斷字串中有沒有指定字元,有的話返回true,沒有返回false let str wwwnbklshhh console.log str.includes s 返回出來的是true console.log str.includes w 3 第二...

ES6 字串 字串

又到了一天一度的寫筆記的時間了,今天看的es6字串部分,因為內容我感覺挺多的,而且需要理解,所以第二個部分模板字串的筆記就放到明天來寫了,今天就寫一下學習字串物件的筆記,筆記分為以下幾點 開始今天的筆記吧!什麼字元的表示方法?第一次聽到這個問題的時候,可能一臉蒙,我查閱了一下資料,簡單的大概的了解了...

ES6 字串擴充套件

1 字串可以使用 u x的形式來表達乙個字元,x叫做字元的碼點,x的範圍是0000 ffff,超過ffff的碼點需要用兩個雙位元組表示 如果我們 u後面的16進製制的值大於ffff,我們需要加乙個大括號 u讓js正確解析。2 我們應該都了解,漢字一般都需要兩個雙位元組來表示,在js中兩個位元組佔乙個...