js中substring和substr的用法比较

原文:js中substring和substr的用法比较

推荐使用substring 方法

 
stringObject.substring(start,stop)
 
stringObject.substr(start,length)
 
定义和用法
提取字符串中两个指定的索引号之间的字符。
substring() 方法用于提取字符串中介于两个指定下标之间的字符。
 
从起始索引号提取字符串中指定数目的字符。

substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。

 
参数 描述
参数     描述
start     必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。
stop     可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。如果省略该参数,那么返回的子串会一直到字符串的结尾。
  参数    描述
start   必需。所需的子字符串的起始位置。字符串中的第一个字符的索引为 0。
length 可选。在返回的子字符串中应包括的字符个数。
 
返回值
一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。   一个新的字符串,包含从 stringObject 的 start(包括 start 所指的字符) 处开始的 length 个字符。如果没有指定 length,那么返回的字符串包含从 start 到 stringObject 的结尾的字符。  
说明
substring 方法返回的子串包括 start 处的字符,但不包括 end 处的字符。
如果 start 与 end 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。
如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。
如果 start 或 end 为负数,那么它将被替换为 0。
  如果start为负数,则start=str.length+start。
如果 length 为 0 或负数,将返回一个空字符串。
如果没有指定该参数,则子字符串将延续到stringObject的最后。
 
 

var str = "0123456789";

console.log(str.substring(0));//------------"0123456789"
console.log(str.substring(5));//------------"56789"
console.log(str.substring(10));//-----------""
console.log(str.substring(12));//-----------""
console.log(str.substring(-5));//-----------"0123456789"
console.log(str.substring(-10));//----------"0123456789"
console.log(str.substring(-12));//----------"0123456789"
console.log(str.substring(0,5));//----------"01234"
console.log(str.substring(0,10));//---------"0123456789"
console.log(str.substring(0,12));//---------"0123456789"
console.log(str.substring(2,0));//----------"01"
console.log(str.substring(2,2));//----------""
console.log(str.substring(2,5));//----------"234"
console.log(str.substring(2,12));//---------"23456789"
console.log(str.substring(2,-2));//---------"01"
console.log(str.substring(-1,5));//---------"01234"
console.log(str.substring(-1,-5));//--------""

 

var str = "0123456789";

console.log(str.substr(0));//---------------"0123456789"
console.log(str.substr(5));//---------------"56789"
console.log(str.substr(10));//--------------""
console.log(str.substr(12));//--------------""
console.log(str.substr(-5));//--------------"56789"
console.log(str.substr(-10));//-------------"0123456789"
console.log(str.substr(-12));//-------------"0123456789"
console.log(str.substr(0,5));//-------------"01234"
console.log(str.substr(0,10));//------------"0123456789"
console.log(str.substr(0,12));//------------"0123456789"
console.log(str.substr(2,0));//-------------""
console.log(str.substr(2,2));//-------------"23"
console.log(str.substr(2,5));//-------------"23456"
console.log(str.substr(2,12));//------------"23456789"
console.log(str.substr(2,-2));//------------""
console.log(str.substr(-1,5));//------------"9"
console.log(str.substr(-1,-5));//-----------""   

 
 备注

 重要事项:与 slice() 和 substr() 方法不同的是,substring() 不接受负的参数。

 
重要事项:ECMAscript 没有对该方法进行标准化,因此反对使用它。substr() 的参数指定的是子串的开始位置和长度,因此它可以替代 substring() 和 slice() 来使用。

 
时间: 2024-09-14 23:19:32

js中substring和substr的用法比较的相关文章

js中substring和substr的用法

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

JS中substring与substr的用法_javascript技巧

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

js中substring和substr两者区别和使用方法_javascript技巧

在开始之前,先回顾下js中下标(数组元素/字符串中字符下标): 下标总是从0开始计数,例如 var arr = [1,2,3];//数组的长度为3,元素下标依次为:0,1,2 arr[0] = 1,arr[1]=2.. 字符串类似:如var s = "hello"://字符串长度为5,第一个字符'h'的下标为0,依次类推 String.substring( ):用于返回一个字符串的子串 用法如下:string.substring(from, to) 其中from指代要抽去的子串第一个字

浅析js中substring和substr的方法_javascript技巧

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

js中substring和substr的定义和用法_javascript技巧

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

js中substring和substr的详细介绍与用法_javascript技巧

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

js中AppendChild与insertBefore的用法详细解析

 这篇文章主要是对js中AppendChild与insertBefore的用法进行了详细的分析介绍,需要的朋友可以过来参考下,希望对大家有所帮助 appendChild定义 appendChild(newChild: Node) : Node Appends a node to the childNodes array for the node. Supported: IE 5.0+, Mozilla 1.0+, Netscape 6.0+, Safari 1.0+, Opera 7.0+ 添加

js中继承的几种用法总结

 本篇文章主要介绍了js中继承的几种用法总结(apply,call,prototype) 需要的朋友可以过来参考下,希望对大家有所帮助 一,js中对象继承   js中有三种继承方式   1.js原型(prototype)实现继承   代码如下: <SPAN style="BACKGROUND-COLOR: #ffffff"><SPAN style="FONT-SIZE: 18px"><html>   <body>  

js中split和replace的用法实例

 这篇文章主要介绍了js中split和replace的用法,实例分析了split和replace的功能及使用技巧,需要的朋友可以参考下     本文实例讲述了js中split和replace的用法.分享给大家供大家参考.具体分析如下: 1. split : 代码如下: <html> <head> <title> 从业人员继续教育报名列表--打印签到表 sdfsd</tr><tr></tr> sdfsd </title> &