站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

js字符串學(xué)習(xí)之怎么返回給定下標(biāo)間的子串

在上一篇文章《js字符串學(xué)習(xí)之計(jì)算給定字符的全部出現(xiàn)位置》中,我們介紹了使用indexOf()和lastIndexOf()函數(shù)結(jié)合while循環(huán),獲取給定子串在字符串中全部位置的方法。那么今天將繼續(xù)給大家?guī)鞪avaScript字符串學(xué)習(xí)系列~

本文將給大家介紹一下JavaScript截取字符串,獲取指定位置間所有字符(即子串)的兩種方法。

首先我們來看看第一種方法–使用slice()

舉個(gè)栗子~

var str="Hello world!";  var n=str.slice(1,7); console.log("原字符串:"+str); console.log("截取下標(biāo)1~7之間的子串:"+n);

我們來看看輸出結(jié)果:

js字符串學(xué)習(xí)之怎么返回給定下標(biāo)間的子串

因?yàn)樽址聵?biāo)是從0開始的,所以使用str.slice(1,7)截取下標(biāo)1~7之間的字符,返回的子串是“ello w”。

我們來了解一下slice()函數(shù)

string.slice(start,end)方法可提取字符串的某個(gè)部分,并以新的字符串返回被提取的部分;該函數(shù)接受一個(gè)必需參數(shù)start和一個(gè)可省略的參數(shù)end。

  • start參數(shù):表示起始下標(biāo);第一個(gè)字符位置為 0。如果為負(fù)數(shù),則從尾部開始截取。

  • end參數(shù):表示結(jié)束下標(biāo)。如果沒有指定該參數(shù),那么切分的數(shù)組包含從 start 到數(shù)組結(jié)束的所有元素;如果這個(gè)參數(shù)是負(fù)數(shù),那么它規(guī)定的是從數(shù)組尾部開始算起的元素。

var str="Hello world!";  var n=str.slice(1,-7); console.log("原字符串:"+str); console.log("截取到的子串:"+n);

輸出結(jié)果:

js字符串學(xué)習(xí)之怎么返回給定下標(biāo)間的子串

接下來我們來看看第二種方法–使用substring() 方法

舉個(gè)栗子~

var str="Hello world!";  var n=str.substring(1,7); console.log("原字符串:"+str); console.log("截取到的子串:"+n);

輸出結(jié)果:

js字符串學(xué)習(xí)之怎么返回給定下標(biāo)間的子串

substring()方法可以提取字符串中介于兩個(gè)指定下標(biāo)之間的字符。我們使用str.substring(1,7)截取字符串str下標(biāo)1~7之間的字符,因此返回的子串是“ello w”。

我們來了解一下substring()函數(shù)。

string.substring(from, to)方法可接受一個(gè)必需參數(shù)from(非負(fù)的整數(shù),指定開始下標(biāo)),一個(gè)可省略的參數(shù)to(指定結(jié)束下標(biāo))。substring() 方法返回的子串包括 開始 處的字符,但不包括 結(jié)束 處的字符。

slice()和substring()的區(qū)別:

slice()和substring()都可根據(jù)指定的起止下標(biāo)位置來截取字符串,都可以包含兩個(gè)參數(shù),第一個(gè)參數(shù)表示起始下標(biāo),第二個(gè)參數(shù)表示結(jié)束下標(biāo)。

但如果第一個(gè)參數(shù)值比第二個(gè)參數(shù)值大,substring() 方法能夠在執(zhí)行截取之前先交換兩個(gè)參數(shù),而對(duì)于 slice() 方法來說,則被無視為無效,并返回空字符串。

var str="Hello world!";  var n1=str.substring(7,1); var n2=str.slice(7,1); console.log("原字符串:"+str); console.log("截取到的子串:"+n1); console.log("截取到的子串:"+n2);

輸出結(jié)果:

js字符串學(xué)習(xí)之怎么返回給定下標(biāo)間的子串

如果參數(shù)值為負(fù)值,slice() 方法能夠把負(fù)號(hào)解釋為從右側(cè)開始定位;而 substring() 方法會(huì)視其為無效。

var str="Hello world!";  var n1=str.substring(1,-7); var n2=str.slice(1,-7); console.log("原字符串:"+str); console.log("截取到的子串:"+n1); console.log("截取到的子串:"+n2);

輸出結(jié)果:

js字符串學(xué)習(xí)之怎么返回給定下標(biāo)間的子串

好了,就說到這里了,有需要的可以看:javascript高級(jí)教程

贊(0)
分享到: 更多 (0)
網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
亚洲精品色婷婷在线影院| 日韩精品无码免费专区网站| 无码日韩精品一区二区免费暖暖| 久久国产午夜精品一区二区三区| 免费日韩在线视频| 中文字幕日韩视频| 国产福利专区精品视频| 99精品全国免费观看视频| 亚洲综合一区无码精品| 四虎国产精品永久在线播放 | 国产精品1024在线永久免费| 在线观看日韩精品| 人妻在线日韩免费视频| 国产日产精品_国产精品毛片| 精品一区狼人国产在线| 精品剧情v国产在线麻豆| 国产精品无码亚洲精品2021| 亚洲精品永久在线观看| 久久精品极品盛宴观看| …久久精品99久久香蕉国产 | 日韩免费高清大片在线| 国产在线视精品麻豆| 波多野结衣精品一区二区三区| 国产成人无码精品久久二区三区| 国产精品免费视频播放器| 国产精品公开免费视频| 免费在线精品视频| 无码日韩精品一区二区人妻 | 国内精品手机在线观看视频| 国内精品九九久久久精品| 国产麻豆精品一区二区三区v视界| 国产精品亚洲A∨天堂不卡| 久久青青草原精品影院| 久久精品一区二区东京热| 久久久久久国产精品三级 | 日韩精品无码专区免费播放| 无码日韩精品一区二区人妻| 四虎永久在线日韩精品观看| 日韩aa在线观看| 国产精品内射视频免费| 九九精品在线视频|