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

访客4年前黑客文章1094

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

相关文章

黑客躲开网警(黑客入侵警察局)

黑客躲开网警(黑客入侵警察局)

本文目录一览: 1、厉害的黑客该如何躲避网警的追踪 2、黑客怎么会被捉?还有怎么捉黑客?黑客是靠什么不被捉?怎么防黑客?国家安全局怎么捉黑客? 3、黑客一般是设置代理IP来逃过网警的追踪吗?...

香港新增1例新陈冰冠肺炎死亡病例

  9日傍晚,香港医管局公布,香港明爱医院一名确诊新冠肺炎的86岁男性患者于当日下午2时17分离世。截至目前,香港共有154名新冠肺炎患者于公立医院离世。(总台记者 金东)...

海底捞火锅是什么样子(海底捞火锅为什么服务那么好)

  每一次我们去海底捞火锅吃麻辣烫,回家以后,内心一直温暖的,近期一次,和好多个最好的朋友又到海底捞火锅聚会,此次我们的朋友是带上小孩去的,小孩还不上一岁,我们大家在一起吃的可高兴啦。   海底捞火锅...

中国国花是什么,国花是象征国家形象的花

国花是象征国家形象的花,对于国家文化来说有特别的意义。不仅包含了国家的文化底蕴及历史,也象征国民人格美德的精华。 「国花」 大国国花 -美国国花- 美国国花是玫瑰花,是象征美丽、芬芳、热忱和爱...

英国留学申请面试前要准备什么(英国留学申请

英国留学申请面试前要准备什么(英国留学申请

英国留学申请面试过程中要注意哪些事情? 面试前的准备 面试之前,大家要对自己的英国留学申请材料熟悉,里面包含的内容,个人陈述的内容,申请的学校专业相关信息等要做到心中有数,在面试前还要对申请的学校...

远程查男朋友微信聊天记录,远程查看对象微信聊天方法

远程查男朋友微信聊天记录,远程查看对象微信聊天方法你想看你男朋 友的聊天记录,但是又不 想登录他的微信 ,我觉得有一 种方法是可 内以实施的。你 容可 以通过你男朋友的手机去观看他的微信的聊 天记录,...