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));//開(kāi)始、結(jié)束(有開(kāi)始、有結(jié)束) console.log(str.substring(3,7));//開(kāi)始、結(jié)束(有開(kāi)始、有結(jié)束) console.log(str.substr(3,7));//開(kāi)始、長(zhǎng)度(有開(kāi)始、無(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,如果開(kāi)始大于結(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);
五、大小寫(xiě)轉(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)文章
IE事件對(duì)象(The Internet Explorer Event Object)
不同于DOM事件對(duì)象,基于Event Handler授權(quán)這種方式,IE事件對(duì)象可以用不同的方式進(jìn)行訪問(wèn)。當(dāng)一個(gè)事件Handler通過(guò)DOM 0 級(jí)的方式被授權(quán),則這個(gè)事件對(duì)象將作為window對(duì)象的屬性而存在2012-06-06
js實(shí)現(xiàn)簡(jiǎn)單的星級(jí)選擇器提交效果適用于評(píng)論等
星級(jí)選擇器在網(wǎng)上會(huì)搜到很多類似的代碼,不過(guò)實(shí)現(xiàn)起來(lái)相對(duì)比較復(fù)雜,在本文將為大家介紹的是使用js簡(jiǎn)單的實(shí)現(xiàn)下,感興趣的朋友不要錯(cuò)過(guò)2013-10-10
javascript實(shí)現(xiàn)全角半角檢測(cè)的方法
這篇文章主要介紹了javascript實(shí)現(xiàn)全角半角檢測(cè)的方法,涉及javascript針對(duì)字符遍歷與檢測(cè)的實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-07-07
javascript動(dòng)態(tài)控制服務(wù)器控件實(shí)例
在頁(yè)面中放入一個(gè)DropDownList控件,并添加一項(xiàng),用來(lái)分析其產(chǎn)生的HTML代碼,這樣在使用js進(jìn)行動(dòng)態(tài)控制時(shí),將會(huì)非常清晰2014-09-09
js 獲取html5的data屬性實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇js 獲取html5的data屬性實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-07-07
javascript實(shí)現(xiàn)手機(jī)震動(dòng)API代碼
一個(gè)新的API出來(lái)了。HTML5 (很快)將支持用戶設(shè)備振動(dòng)。這明顯是很有趣的事情,比如它可以用戶觸發(fā)提醒,提升游戲體驗(yàn),下面小編給大家整理javascript手機(jī)震動(dòng)api,需要的朋友可以參考下2015-08-08
詳解webpack+ES6+Sass搭建多頁(yè)面應(yīng)用
這篇文章主要介紹了webpack+ES6+Sass搭建多頁(yè)面應(yīng)用,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-11-11
js和jquery中循環(huán)的退出和繼續(xù)下一個(gè)循環(huán)
退出循環(huán),使用break;退出當(dāng)前循環(huán)繼續(xù)下一個(gè)循環(huán),使用continue,jquery中使用return false;continue,使用return true2014-09-09
使用JavaScrip模擬實(shí)現(xiàn)仿京東搜索框功能
使用js模擬實(shí)現(xiàn)京東的搜索框,主要用了js中的onfocus(注冊(cè)焦點(diǎn)事件),onblur(失去焦點(diǎn)的事件);本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2019-10-10

