js中字符串截取的几种方式

访客4年前黑客文章1112

众所周知,js提供了许多字符串截取的方式。下面主要先容js中slice(),splice(),split(),substring(),substr()的使用和区别


slice()

可从已有的数组中返回选定的米素。使用范围:Array 和String。语法:

obj.slice(start, end)

参数:

start: 必须。划定从数组(字符串)的哪个index更先选取,若是是负数,则从数组(字符串)尾部算index,好比,-1指最后一个米素,-2指倒数第二个米素。
end:可选。划定到哪个index之前竣事。若是没有指定该参数,那么切分的数组(字符串)包罗从start到数组(字符串)竣事的所有米素。若是这个参数是负数,那么它划定的是从数组(字符串)尾部更先算起的米素。

返回值:

返回一个新的数组(字符串),包罗从start到end(不包罗改米素)的obj中的米素。

说明:

该方式并不会修改数组(字符串),而是返回一个子数组(子串)

例子: 


 splice()

向/从数组中添加/删除项目,然后返回被删除的项目。该方式会改变原始数组。使用范围:Array。语法:

arrayObject.splice(index, howmany, ite1,......, itemxX)

参数:

index: 必须。正数,划定添加/删除项目的index,使用负数可从数组末端处划定位置。
howmany: 必须。要删除的项目数目。若是设置为0,则不会删除项目。
item1, ..., itemX: 可选。向数组添加的新米素。

返回值:

Array: 包罗被删除项目的新数组,若是有的话。

说明:

splice()方式可删除从Index处更先的零个或者多个米素,而且用参数列表中声明的一个或者多个值来替换那些被删除的米素。若是从arrayObject中删除了米素,则返回的是包罗被删除的米素的数组。

例子:



split()

用于把一个字符串支解成字符串数组。使用范围:String。语法:

stringObject.split(seperator, howmany)

参数:

seperator: 必须。字符串或者正则表达式,从该参数指定的地方支解stringObject。
howmany: 可选。该参数可指定返回的数组的更大长度。若是设置了该参数,返回的子串不会多于这个参数指定的数组。若是没有设置改参数,整个字符串都会被支解,不思量它的长度。

返回值:

一个字符串数组。该数组是在separator指定的界限处将字符串stringObject支解成子串建立的。返回的数组中的子串不包罗seperator自身。然则,若是seperator是包罗子表达式的正则表达式,那么返回的数组中包罗与这些子表达式匹配的字符串(但不包罗与整个正则表达式匹配的文本)。

提醒:

若是把空字符串('')用作seperator,呢么stringObject中的每个字符之间都会被支解;

String.split()执行的操作与Array.join执行的操作是相反的。

例子:



substring()

用于提取字符串中介于两个指定index之间的字符。使用范围:String。语法:

stringObject.substring(start, stop)

参数:

start: 必须。一个非负的正数,划定要提取的子串的之一个字符在stringObject中的位置。
stop: 可选。一个非负的正数,比要提取的子串的最后一个字符在stringObject中的位置多1.若是省略该参数,那么返回的子串会一直到字符串的末端。

返回值:

一个新的字符串,该字符串值包罗stringObject的一个子字符串,其内容是从start处到stop-1处的所有字符,其长度为stop减start。

说明:

substring()方式返回的子串包罗start处的字符,但不包罗stop处的字符。若是stop和start相等,返回的是一个空串。若是start比stop大,那么该方式在提取子串之前会先交流这两个参数。

提醒:

与slice()和substr()方式差别的是,substring()不接受负的参数。

例子:



substr()

在字符串中抽取从start下表更先的指定书目的字符。语法:

stringObject.substr(start, length)

参数:

start: 必须。要抽取的子串的实在下表。必须是数值。若是是负数,那么该参数声明从字符串的尾部更先算起的位置。也就是说,-1指字符串中最后一个字符,-2指倒数第二个字符,以此类推。
length: 可选。字串中的字符数,必须是数值,若是省略了该参数,那么返回从stringObject的更先位置到竣事的字符串。

返回值:

一个新的字符串,包罗从stringObject的start处更先的length哥字符。

提醒:

substr()的参数指定的是子串的更先位置和长度,因此它可以替换substring()和slice()来使用。

ES中没有对该方式举行标准化,因此否决使用。

例子:



思源资源网:分类流动

1.阿里云: 本站现在使用的是阿里云主机,平安/可靠/稳固。点击领取2000米代金券、领会最新阿里云产物的种种优惠流动点击进入

相关文章

如何同步老公的微信消息(如何同步老公的微信

上周四,美国犹他大学官方宣布,学校的社会与行为科学学院在7月份遭到勒索软件攻击,最终校方向黑客支付了大约50万美元以解决问题。 犹他大学在一份官方声明中表示,7月19日学校遭到了攻击,攻击影...

手机如何杀毒(安卓手机如何杀毒)

手机如何杀毒(安卓手机如何杀毒)

华为手机如何杀毒 1、首先,打开手机,开启手机管家选项,这是手机自带的。在手机管家界面中,点击“病毒查杀”选项。进入病毒查杀界面后,点击下方的“快速扫描”选项。在该界面中,可以看到手机的扫描进度。2、...

篮子是什么意思(货币篮子是个什么东西)

篮子是什么意思(货币篮子是个什么东西)

人民币纳入SDR货币篮子几成定局 本月底批准 国际货币基金组织(IMF)总裁拉加德(Christine Lagarde)上周五晚上表示支持将人民币纳入特别提款权(SDR)货币篮子,使人民币成为重...

digu手表价格表(伯爵9p机芯手表直销报价)

呆板digu手表价值表价值查询购置销售公司 digu手表浅紫蓝版的价值   46600/元     上海肺叶秸钟表商业公司   伯爵9p机芯手表暗蓝色款几多钱   265100/元     柳州...

黑客教你3分钟盗抖音  这些密码千万不要用

黑客教你3分钟盗抖音  这些密码千万不要用

这些密码? 你中枪了吗? 教你如何设置最强密码!     1 第一类 谐音混合型   可以利用数字谐音或相似字符来设计密码。例如:生日为“19950824”则可以设置为“199w...

愿意帮助人的黑客在哪(你愿意帮助我吗的英文)-手机怎么样的清除黑客苹果

愿意帮助人的黑客在哪(你愿意帮助我吗的英文)-手机怎么样的清除黑客苹果

愿意帮助人的黑客在哪(你愿意帮助我吗的英文)(tiechemo.com)一直致力于黑客(HACK)技术、黑客QQ群、信息安全、web安全、渗透运维、黑客工具、找黑客、黑客联系方式、24小时在线网络黑客...