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

访客3年前黑客文章1032

众所周知,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米代金券、领会最新阿里云产物的种种优惠流动点击进入

相关文章

淘宝找黑客暗语_淘宝找黑客改成绩你都知道哪些

有网络的地方黑客便一直存在,或许黑客对于普通民众来说并不熟知,实际上黑客说白来就是一群电脑高手,只要是网络中的事情,几乎都是无所不能的,比如网络中的成绩不理想,想通过黑客给改一下,其实并不难,对于土豪...

迪奥999红壳黑客(迪奥999黑色和红色包装有什么区别)

迪奥999红壳黑客(迪奥999黑色和红色包装有什么区别)

迪奥999是什么颜色 1、迪奥999的全红色可以在日常薄涂和厚涂层中轻松控制。薄涂是玫瑰色的,这很平常。宫殿的气场加厚几层就出来了。就是那种偏蓝的红色,所以很白不挑皮。是一种特殊的半哑光质地。整体感觉...

发早上好的图片会被黑客入侵么(被黑客入侵的现象图片)

发早上好的图片会被黑客入侵么(被黑客入侵的现象图片)

本文导读目录: 1、早上好图片是黑客制造的吗? 2、朋友发来信息说有些精美的早安晚安图片暗藏黑客窃取用户信息是真的吗 3、关于早上好图片和视频是黑客设计的吗?转发早上好图片和视频会传播病毒吗?...

什物的读音(累累失误的读音)

罪行累累zuìxínglěilěi释义:①累累:形容积累很多。现指人犯罪的行为多得无法计算。 在不同的词中读音自然不同,这是因为意思的不同。硕果累累2声罪行累累3声百度上错误很多,经常自相矛盾,希望...

黑客编程入(黑客编程入门3)

黑客编程入(黑客编程入门3)

本文导读目录: 1、黑客基本入门知识 2、阿诺 黑客编程入门 3、入黑客要学哪些语言哪些知识? 4、什么是黑客程序? 5、黑客入门,先学什么编程? 6、黑客如何编程入侵脚本 7...

8元投入微交易平台

现在国家严打微盘,资金不是第三方托管,所以资金不是很安全 我制作的划算啊,几千块就能完成,而且包后期维护 具体看你怎么做,你要说几千几万的预算就不用做了,具体私聊我 建议做正规平台现在有很多正规平台投...