javascript字符串截取的substring、substr和slice

本文详细的介绍了javascript中substring()、substr()和slice()三个JS字符串截取的方法,substring()方法用于提取字符串中介于两个指定下标之间的字符.substr 方法用于返回一个从指定位置开始的指定长度的子字符串。

substring

方法用于提取字符串中介于两个指定下标之间的字符

substring(start,end)
参数 描述
start 必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。
stop 可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。

如果省略该参数,那么返回的子串会一直到字符串的结尾。

返回值

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

说明

substring 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。
如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。
如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。
如果 start 或 end 为负数,那么它将被替换为 0。

2.substr 方法

定义和用法

substr 方法用于返回一个从指定位置开始的指定长度的子字符串。

语法

stringObject.substr(start [, length ])
参数 描述
start 必需。所需的子字符串的起始位置。字符串中的第一个字符的索引为 0。
length 可选。在返回的子字符串中应包括的字符个数。

说明

如果start为负数,则start=str.length+start。
如果 length 为 0 或负数,将返回一个空字符串。
如果没有指定该参数,则子字符串将延续到stringObject的最后。

首先,他们都接收两个参数,slice和substring接收的是起始位置和结束位置(不包括结束位置),而substr接收的则是起始位置和所要返回的字符串长度。直接看下面例子:

var test = ‘hello world‘;
alert(test.slice(4,7));             //o w
alert(test.substring(4,7));         //o w
alert(test.substr(4,7));            //o world

这里有个需要注意的地方就是:substring是以两个参数中较小一个作为起始位置,较大的参数作为结束位置。

alert(test.substring(7,4));          //o w

接着,当接收的参数是负数时,slice会将它字符串的长度与对应的负数相加,结果作为参数;substr则仅仅是将第一个参数与字符串长度相加后的结果作为第一个参数;substring则干脆将负参数都直接转换为0。测试代码如下

var test = ‘hello world‘;

alert(test.slice(-3));         //rld
alert(test.substring(-3));     //hello world
alert(test.substr(-3));        //rld
alert(test.slice(3,-4));       //lo w
alert(test.substring(3,-4));   //hel
alert(test.substr(3,-4));      //空字符串

1 注意:IE对substr接收负值的处理有错,它会返回原始字符串。

时间: 2024-10-12 08:30:36

javascript字符串截取的substring、substr和slice的相关文章

Mysql字符串截取函数SUBSTRING的用法说明

感觉上MySQL的字符串函数截取字符,比用程序截取(如PHP或JAVA)来得强大,所以在这里做一个记录,希望对大家有用. 函数: 1.从左开始截取字符串 left(str, length) 说明:left(被截取字段,截取长度) 例:select left(content,200) as abstract from my_content_t 2.从右开始截取字符串 right(str, length) 说明:right(被截取字段,截取长度) 例:select right(content,200

JavaScript字符串截取方法

1 字符方法 charAt():接收一个参数,返回给定位置的字符 charCodeAt():接收一个参数,返回指定位置字符的字符编码 var str = "hello world"; alert(str.charAt(1)); //e alert(str.chatCodeAt(1)) //101 2 字符串操作方法 concat():将一个或多个字符串拼接起来.   string.concat(str) slice(start,[stop]):接收一个或两个参数,起始位置和结束位置,返

Mysql字符串截取函数SUBSTRING和ASCII()函数

函数SUBSTRING: 1.从左开始截取字符串 left(str, length) 说明:left(被截取字段,截取长度) 例:select left(content,200) as abstract from my_content_t 2.从右开始截取字符串 right(str, length) 说明:right(被截取字段,截取长度) 例:select right(content,200) as abstract from my_content_t 3.截取字符串 substring(st

javascript字符串截取

substr 方法返回一个从指定位置开始的指定长度的子字符串. stringvar.substr(start [, length ]) 参数stringvar:必选项.要提取子字符串的字符串文字或 String 对象. start:必选项.所需的子字符串的起始位置.字符串中的第一个字符的索引为 0. length:可选项.在返回的子字符串中应包括的字符个数. 说明如果 length 为 0 或负数,将返回一个空字符串.如果没有指定该参数,则子字符串将延续到 stringvar 的最后. 示例下面

js字符串函数之substring() substr()

substring 方法用于提取字符串中介于两个指定下标之间的字符 substring(start,end) 开始和结束的位置,从零开始的索引 参数     描述start     必需.一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置.end      可选.一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1.如果省略该参数,那么返回的子串会一直到字符串的结尾. 返回值 一个新的字符串,该字符串值包含 stringObje

swift中字符串截取方法(substring)

下面介绍2种swift的字符串截取方法,实际上用到了substringFromIndex,substringToIndex,substringWithRange 1.将String转化为NSString再截取,代码如下:  var s="1234567890"var ns1=(s as NSString).substringFromIndex(5)var ns2=(s as NSString).substringToIndex(4)var ns3=(s as NSString).sub

两个JavaScript的截取类substring和slice

作用:可以截取字符串中的连续的一部分 用例子来记忆: var str = "我来自黑龙江"; (1) alert(str.substring(0,2)); //输出的是“我来” alert(str.substring(2,0));//和上行是一样的结果 alert(str.substring(-3,2));//在substring中负数自动转换成0: (2) alert(str.slice(0,2)) ;//正常执行 alert(str.slice(2,0)) ;//出现问题,slic

substring,substr,和slice的区别详解。

1.Substring(x,y) : 输出一个字符串,当其中只有一个参数时,会输出从x开始到结尾的String. 举例: var str="hello";        console.log(str.substring(1)); 输出结果为ello 如果有两个参数,则会输出从x到y的值,值得注意的时候,这里的x ,y可以理解成一个 (x, y]的区间,即不包含第x个元素,但包含第y个元素, x,y均从1开始计算 举例: var str="helloworld";

SQL中字符串截取函数(SUBSTRING)

1.left(name,4)截取左边的4个字符 列: SELECT LEFT(201809,4) 年 结果:2018 2.right(name,2)截取右边的2个字符 SELECT RIGHT(201809,2) 月份 结果:09 3.SUBSTRING(name,5,3) 截取name这个字段 从第五个字符开始 只截取之后的3个字符 SELECT SUBSTRING('成都融资事业部',5,3) 结果:事业部 4.SUBSTRING(name,3) 截取name这个字段 从第三个字符开始,之后