js最實(shí)用string(字符串)類型的使用及截取與拼接詳解
var a = '世界上最遠(yuǎn)的距離不是天涯海角';
一、通過(guò)字符獲取位置或通過(guò)位置獲取字符:
//指定位置返回字符 console.log(str.charAt(1)); console.log(str[1]); //指定位置返回字符編碼 console.log(str.charCodeAt(1)); //返回字符串位置 console.log(str.indexOf("o"));//不存在返回-1 console.log(str.lastIndexOf("o"));
在瀏覽器中執(zhí)行結(jié)果如下:
假如現(xiàn)在有個(gè)變量:
var a = '世界上最遠(yuǎn)的距離不是天涯海角';
var b = '最遠(yuǎn)的距離';
現(xiàn)在想動(dòng)態(tài)獲取到變量b之前的字符串,和變量之后的字符串,則可以這樣
1.利用slice獲取到之前的字符串;
2.獲取到變量b的長(zhǎng)度,在b初始位置后加上b的長(zhǎng)度,及從b的尾部截取a的長(zhǎng)度(當(dāng)然a當(dāng)長(zhǎng)度可以省略?。?;
二、拼接字符串:
一般有兩種:
a.直接用“+”;
b.concat函數(shù)
三、切割方法
console.log(str.slice(3,7));//開始、結(jié)束(有開始、有結(jié)束) console.log(str.substring(3,7));//開始、結(jié)束(有開始、有結(jié)束) console.log(str.substr(3,7));//開始、長(zhǎng)度(有開始、無(wú)結(jié)束、有長(zhǎng)度) console.log(str.slice(-3,-2));//第一個(gè)負(fù)值與長(zhǎng)度相加,第二個(gè)負(fù)值與長(zhǎng)度相加 console.log(str.substring(3,-1));//第一個(gè)負(fù)值轉(zhuǎn)換為0,第二個(gè)負(fù)值轉(zhuǎn)換為0,如果開始大于結(jié)束,則對(duì)調(diào) console.log(str.substr(-3,-1));//第一個(gè)負(fù)值與長(zhǎng)度相加,第二個(gè)負(fù)值轉(zhuǎn)換為0
下面看個(gè)例子:
var type可為dir/file
if (type !== 'dir' && name.indexOf('.') !== -1) {//file basename=name.substr(0,name.lastIndexOf('.')); extension=name.substr(name.lastIndexOf('.')); } else {//dir basename=name; extension=false; } //中文
四、去掉前后空格
var strValue = " hello world! "; var trimedStrValue = strValue.trim(); console.log(strValue); console.log(trimedStrValue);
五、大小寫轉(zhuǎn)換方法
var strLowUp = "HELLO world!"; console.log(str.toLowerCase()); console.log(str.toUpperCase()); console.log(strLowUp);
六、與模式有關(guān)的方法,調(diào)用者為字符串,參數(shù)為模式(正則對(duì)象或正則表達(dá)式或字符串)
1、匹配方法,本質(zhì)上與調(diào)用RegExp的exec()方法相同(調(diào)用者為正則表達(dá)式或正則對(duì)象,參數(shù)為字符串)
//返回?cái)?shù)組對(duì)象,第一項(xiàng)為匹配到的字符串,其它項(xiàng)為捕獲組匹配到的字符串
//返回對(duì)象同時(shí)具有index和input屬性,index為匹配到字符串的索引,input為進(jìn)行匹配的字符串str
2、查詢/搜索方法
//返回值為匹配字符的索引,如未查詢到則返回-1
search() 方法用于檢索字符串中指定的子字符串,或檢索與正則表達(dá)式相匹配的子字符串。
3、替換方法,兩個(gè)參數(shù),用參數(shù)二替換參數(shù)一,參數(shù)一為字符串或正則表達(dá)式,參數(shù)二為字符串或函數(shù)
a. //正則
b. 字符串
c. 函數(shù)
//如果第二個(gè)參數(shù)是函數(shù) //函數(shù)接收的參數(shù)為:匹配到的子字符串、 第一個(gè)捕獲組匹配到的子字符串、 第二個(gè)捕獲組匹配到的子字符串...、模式匹配項(xiàng)的索引、原始字符串 var repStr = str.replace(/at/g,function(match,index,input){ console.log(match);//at console.log(index);// console.log(input);//cat,bat,sat,fat return "an"; }); console.log(repStr);//can,ban,san,fan
4、分割方法,將字符串按照指定的分隔符分割為多個(gè)子字符串
//返回值為存放多個(gè)子字符串的數(shù)組 var str = "red,blue,green,yellow"; var strArray = str.split(","); var strArray = str.split(/[^\,]+/);//匹配所有不是逗號(hào)字符作為分隔符 console.log(strArray);//["red", "blue", "green", "yellow"] //第二個(gè)參數(shù)用于控制數(shù)組的長(zhǎng)度 var strArray = str.split(",",2); console.log(strArray);//["red", "blue", "green", "yellow"]
七、比較方法,返回值為1(>0)、0、-1(<0)
var strValue = "yellow"; console.log(strValue.localeCompare("brick"));//>0 console.log(strValue.localeCompare("yellow"));//0 console.log(strValue.localeCompare("zoo"));//<0
以上所述是小編給大家介紹的js string使用截取與拼接詳解整合,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
動(dòng)態(tài)的綁定事件addEventListener方法的使用
本文為大家介紹下動(dòng)態(tài)的綁定事件的方法addEventListener的使用示例,不了解的朋友可以參考下2014-01-01利用Math.js解決JS計(jì)算小數(shù)精度丟失問(wèn)題
電商系統(tǒng)中訂單、庫(kù)存中有數(shù)字等加減乘除算術(shù),下面這篇文章主要給大家介紹了關(guān)于利用Math.js解決JS計(jì)算小數(shù)精度丟失問(wèn)題的相關(guān)資料,mathjs是一個(gè)前端在計(jì)算上面必定會(huì)用到的類庫(kù),需要的朋友可以參考下2022-04-04clipboard.js無(wú)需Flash無(wú)需依賴任何JS庫(kù)實(shí)現(xiàn)文本復(fù)制與剪切
這篇文章主要實(shí)現(xiàn)了無(wú)需Flash無(wú)需依賴任何JS庫(kù)實(shí)現(xiàn)文本復(fù)制與剪切,是一款極現(xiàn)代的,不需要flash,不依賴任何其他js庫(kù)的非常小的插件,叫clipboard.js,感興趣的小伙伴們可以參考一下2015-10-10JS實(shí)現(xiàn)動(dòng)態(tài)無(wú)縫輪播
這篇文章主要為大家詳細(xì)介紹了JS實(shí)現(xiàn)動(dòng)態(tài)無(wú)縫輪播,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-01-01JavaScript 實(shí)現(xiàn)簡(jiǎn)單的倒計(jì)時(shí)彈窗DEMO附圖
做一個(gè)簡(jiǎn)單的設(shè)置網(wǎng)頁(yè),因?yàn)樾枰貑⒃O(shè)備功能,于是就想在上面加一個(gè)倒計(jì)時(shí)彈窗的界面,下面是具體的實(shí)現(xiàn),大家可以參考下2014-03-03詳解webpack的clean-webpack-plugin插件報(bào)錯(cuò)
這篇文章主要介紹了詳解webpack的clean-webpack-plugin插件報(bào)錯(cuò),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10