JavaScript中ES6字符串擴展方法
es6這個String對象倒是擴展了不少方法,但是很多都是跟字符編碼相關,個人選了幾個感覺比較常用的方法;
includes 搜索字符的神器
還記得我們之前如何判斷某個字符串對象是否包含特地字符的嗎?
var str='google'; if(str.indexOf('o')>-1){ console.log('yes'); }else{ console.log('no'); }
indexOf本來只是一個獲取字符對應位置的方法,因為找到不到會返回-1這個值,就成了判斷是否包含的方法,includes則就是判斷是否包含的直接返回布爾值;
let str='google'; if(str.includes('o')){ console.log('yes'); }else{ console.log('no'); }
這樣更符合語義化,indexOf就是負責獲取位置,includes負責判斷包含關系;
startsWith ,endsWith 輕松定首尾
startsWith用于判斷是否位于頭部,endsWith判斷是否位于尾部,可以說這兩個方法是includes方法的擴展;
let str='google'; console.log(str.startsWith('g')); //true console.log(str.endsWith('e')); //true
repeat 懶人福利
顧名思義,這個方法就是可以獲取字符串重復N次后的方法;
let str='google'; console.log(str.repeat(3)); //googlegooglegoogle
repeat方法接受一個數(shù)字類型的參數(shù),可以是正式也可以是小數(shù),如果是浮點型會自動調(diào)用Math.floor方法轉(zhuǎn)為整型;
let str='google'; console.log(str.repeat(3.5)); //googlegooglegoogle console.log(str.repeat(Math.floor(3.5)));//googlegooglegoogle
參數(shù)可以為0這樣就會返回一個空字符串,但是不能為負數(shù),否則會報錯;
let str='google'; console.log(str.repeat(0)); //'' console.log(str.repeat(-3.5));//RangeError: Invalid count value
padStart,padEnd 缺啥補啥
這兩個方法其實是ES7標準下擴展的方法,作用就是自動補全;
let str='goo';<br> str.padStart(5, 'le') // 'legoo' str.padStart(4, 'le') // 'lgoo' str.padEnd(5, 'le') // 'goole' str.padEnd(4, 'le') // 'gool'
這兩個方法類似都是接受兩個參數(shù),第一個是補全的長度,第二個是要補充的內(nèi)容,由于是es7標準的方法,現(xiàn)在瀏覽器還不能直接運行,可以嘗試借助babel運行;
以上所述是小編給大家介紹的JavaScript中ES6字符串擴展方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
JavaScript中apply方法的應用技巧小結(jié)
這篇文章給大家總結(jié)了在js中apply方法的一些應用技巧,通過這些技巧對大家日常的使用相信會有幫助,有需要的朋友們下面來一起看看吧。2016-09-09深入理解JavaScript系列(3) 全面解析Module模式
Module模式是JavaScript編程中一個非常通用的模式,一般情況下,大家都知道基本用法,本文嘗試著給大家更多該模式的高級使用方式2012-01-01