JS怎么截取字符串
本篇内容主要讲解“JS怎么截取字符串”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JS怎么截取字符串”吧!
substr() 方法
substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。
stringObject.substr(start,length)
start:必需。要抽取的子串的起始下标。必须是数值。如果是负数,那么该参数声明从字符串的尾部开始算起的位置。
也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。
length:可选。子串中的字符数。必须是数值。如果省略了该参数,那么返回从 stringObject 的开始位置到结尾的字串。
记住: substr() 的第二个参数是长度
var str="abcdefg";str.substr(3) // defgstr.substr(3,2) // de (2表示长度,是下标为3开开始,包括3之后的两个字符)str.substr(-2) // fg 2 倒数第二个字符到结尾的字符串str.substr(-3,2) // ef 倒数第三个字符开始
substring() 方法
substring() 方法用于提取字符串中介于两个指定下标之间的字符。
stringObject.substring(start,stop)
start: 必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。
stop: 可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。
如果省略该参数,那么返回的子串会一直到字符串的结尾。
返回值: 一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。
说明: substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符。
如果参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数。
var str="abcdefg"str.substring(3) // defgstr.substring(3,3) // 空的字符串str.substring(3,5) // de 下标为3开始(包括3),到下表为5(不包括5)的字符串str.substring(5,3) // de 当第一个参数 > 第二个参数 时 该方法执行时会先交换两个参数,变成:str.substring(3,5)str.substring(-3) // abcdefg substring()不接受负数的参数,参数为负数是,返回原字符串
slice() 方法
slice() 方法可从已有的数组中返回选定的元素。
arrayObject.slice(start,end)
start:必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。
end:可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。
var str="abcdefg"str.slice(3) // defg str.slice(3,5) // destr.slice(-2) //fgstr.slice(3,-2) // destr.slice(-4,-2) // de 负值参数从后面数起, -1表示最后一个元素str.slice(3,-6) //空数组,当第二个参数指定的元素索引 < 第一个餐宿指定的元素索引,返回空数组// 如果是数组,则返回一个新数组var arr = ['a','b','c','d','e','f','g']str.slice(3) // ['d','e','f','g']
到此,相信大家对“JS怎么截取字符串”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341