1存捺、split() 方法用于把一個字符串分割成字符串?dāng)?shù)組
語法:
stringObject.split(separator, howmany)
separator:必需兼吓。 字符串或正則表達(dá)式浑娜, 從該參數(shù)指定的地方分割 stringObject编饺。
howmany:可選秽誊。該參數(shù)可指定返回的數(shù)組的最大長度日熬。如果設(shè)置了該參數(shù)毕荐,返回的子串不會多于這個參數(shù)指定的數(shù)組弄慰。如果沒有設(shè)置該參數(shù)第美, 整個字符串都會被分割,不考慮它的長度陆爽。
注意:
1什往、一個字符串?dāng)?shù)組。 該數(shù)組是通過在 separator 指定的邊界處將字符串 stringObject 分割成子串創(chuàng)建的慌闭。 返回的數(shù)組中的字串不包括 separator 自身别威。
2躯舔、如果 separator 是包含子表達(dá)式的正則表達(dá)式, 那么返回的數(shù)組中包括與這些子表達(dá)式匹配的字串( 但不包括與整個正則表達(dá)式匹配的文本)省古。
3粥庄、如果把空字符串("") 用作 separator, 那么 stringobject 中的每個字符之間都會被分割豺妓。
4飒赃、String.split() 執(zhí)行的操作與 Array.join 執(zhí)行的操作是相反的。
let str = 'abcdefj';
let arr = str.split('');
console.log(str) // abcdefj
console.log(arr) // ['a', 'b', 'c', 'd', 'e', 'f', 'j'];
2科侈、slice() 方法提取一個字符串的一部分载佳,并返回一新的字符串
語法:
str.slice(start, end)
start:必需。規(guī)定從何處開始選取臀栈。 如果是負(fù)數(shù)蔫慧,那么它規(guī)定從字符串尾部開始算起的位置。也就是說权薯,-1指最后一個元素姑躲,-2指倒數(shù)第二個元素,以此類推盟蚣。
end:可選黍析。規(guī)定從何處結(jié)束選取。該參數(shù)是字符串束處的下標(biāo)屎开。如果沒有指定該參數(shù)阐枣,那么切分的字符串包含從 start 到字符串結(jié)束的所有元素。如果這個參數(shù)是負(fù)數(shù)奄抽,那么它規(guī)定的是從字符串尾部開始算起的元素蔼两。
注意:
1、該方法并不會修改原字符串逞度,而是返回一個新的字符串额划。如果想刪字符串中的一段元素,應(yīng)該使用方法 String.splice()档泽。
2俊戳、可使用負(fù)值從字符串的尾部選取元素。
3馆匿、如果 end 未被規(guī)定抑胎,那么 slice() 方法會選取從 start 到字符串結(jié)尾的所有元素。
let str = 'abcdefg';
let sliceStr = str.slice(1,4);
console.log(str); // abcdefg
console.log(sliceStr); // bcd
3甜熔、indexOf() 方法可返回某個指定的字符串值在字符串中首次出現(xiàn)的位置
語法:
stringObject.indexOf(searchvalue, fromindex)
searchvalue:必需圆恤。規(guī)定需檢索的字符串值。
fromindex:可選的整數(shù)參數(shù)。規(guī)定在字符串中開始檢索的位置盆昙。它的合法取值是0到stringObject.length - 1羽历。如省略該參數(shù),則將從字符串的首字符開始檢索淡喜。
注意:
1秕磷、該方法將從頭到尾地檢索字符串 stringObject,看它是否含有子串 searchvalue炼团。開始檢索的位置在字符串的 fromindex 處或字符串的開頭(沒有指定fromindex時)澎嚣。如果找到一 searchvalue,則返回 searchvalue 的第一次出現(xiàn)的位置瘟芝。stringObject 中的字符位置是從0開始的易桃。
2、indexOf() 方法對大小寫敏感锌俱!
3晤郑、如果要檢索的字符串值沒有出現(xiàn),則該方法返回 -1贸宏。
let str = 'abcdefg';
console.log(str.indexOf('e')); // 4
console.log(str.indexOf('j')); // -1
4造寝、replace() 方法用于在字符串中用一些字符替換另一些字符,或替換一個與正則表達(dá)式匹配的子串
語法:
stringObject.replace(regexp/substr,replacement)
regexp/substr:必需吭练。規(guī)定子字符串或要替換的模式的RegExp對象诫龙。注意,如果該值是一個字符串鲫咽,則將它作為要檢索的直接量文本模式签赃,而不是首先被轉(zhuǎn)換為RegExp對象。
replacement:必需浑侥。一個字符串值姊舵。規(guī)定了替換文本或生成替換文本的函數(shù)晰绎。
注意:
1寓落、一個新的字符串,是用 replacement 替換了 regexp 的第一次匹配或所有匹配之后得到的荞下。
2伶选、字符串 stringObject 的 replace() 方法執(zhí)行的是查找并替換的操作。它將在 stringObject 中查找與 regexp 相匹配的子字符串尖昏,然后用 replacement 來替換這些子串仰税。如果 regexp 具有全局標(biāo)志 g,那么 replace() 方法將替換所有匹配的子串抽诉。否則陨簇,它只替換第一個匹配子串。
3迹淌、replacement 可以是字符串河绽,也可以是函數(shù)己单。如果它是字符串,那么每個匹配都將由字符串替換耙饰。但是 replacement 中的 $ 字符具有特定的含義纹笼。如下表所示,它說明從模式匹配得到的字符串將用于替換苟跪。
let str = 'abcdefg';
let replaceStr = str.replace('abcde', '66666');
console.log(str); // abcdefg
console.log(replaceStr); // 66666fg