推荐使用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() 来使用。

 

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

  1. js中substring和substr的用法

    js中substring和substr的用法 substring 方法用于提取字符串中介于两个指定下标之间的字符 substring(start,end) 开始和结束的位置,从零开始的索引 参数    ...

  2. js中substring和substr的用法 (转)

    1.substring 方法 定义和用法 substring 方法用于提取字符串中介于两个指定下标之间的字符. 语法 stringObject.substring(start,stop) 参数     ...

  3. JS中substring与substr的用法

    substring方法用于提取字符串中介于两个指定下标之间的字符 substring(start,end) 开始和结束的位置,从零开始的索引javascript 参数 描述 start 必需.一个非负 ...

  4. js中substring与substr的学习。

    今天在工作的过程中,看到js中两个双胞胎函数.分别是substring与substr.顿时被两个可恶的家伙给迷惑住了,不知道具体有什么作用.. 先来看看substring手册是怎么介绍的. 手册解释的 ...

  5. js中substring和substr用法与区别

    String.substring( ):用于返回一个字符串的子串 用法如下:string.substring(from, to) 其中from指代要抽去的子串第一个字符在原字符串中的位置 to指代所要 ...

  6. js 中 substring() 和 substr() 提取字符

    提取字符串substring() substring() 方法用于提取字符串中介于两个指定下标之间的字符. 语法: stringObject.substring(startPos,stopPos)  ...

  7. JS中substring与substr的区别

    Substring: 该方法可以有一个参数也可以有两个参数. (1)  一个参数: 示例: var str=“Olive”: str.substring(3); 结果:“ve” 说明:当substri ...

  8. 第22篇 js中的this指针的用法

    前面把js的相关知识总结了下,今天把js中的上下文的this,对于强类型语言,this的用法非常的单一,因为他们没有js特有的动态绑定. 首先看下面代码: function funcA() { thi ...

  9. js中的this指针的用法

    首先看下面代码: function funcA() { this.name = "hello"; console.log(this.name); this.show = funct ...

随机推荐

  1. DataGridView重绘painting简单实例

    private void dataGridViewX1_CellPainting(object sender, DataGridViewCellPaintingEventArgs e) { & ...

  2. 基于python3的手机号生成脚本

    今天利用业余,自己突发想法来写个手机号码生成的脚本,其实自己用的方法很简单,想必肯定又不少人写的比我的好,我只是自己闲来无聊搞一下, #作者:雷子 #qq:952943386 #日期:2016年7月1 ...

  3. solr查询在solrconfig.xml中的配置

    <requestHandler name="/select" class="solr.SearchHandler"> <lst name=&q ...

  4. [WinForm] VS2010的程序打包封装

    因为学习的要求,我需要把自己的程序进行打包封装,开始也是苦恼,没有找到很好的办法,但并没有放弃,终于发现了一个差不多的文章,于是摸索着进行,可喜的是是成功了,下面和大家分享一下. 第一步:前提是你已经 ...

  5. TCP/IP协议原理与应用笔记25:网际协议(IP)之 数据报(Datagram)

    1. 数据报(Datagram)格式: 2. 长度字段 (1)首部长度字段, bits 以 4 字节(即32bits)为单位 取值:5~15(即首部长度为20 ~ 60 bytes) (2)总长度字段 ...

  6. 关于Django中的表单验证

    ModelForm 和 普通的Form 都可以做表单验证 对于ModelForm如果只是想验证其中一部分model中的field,可以指定:内部类Meta的fields元素: fields = ('x ...

  7. ionic项目的一些简单操作

    1.首先保证开发环境没问题: 2.下载一个ionic项目:命令ionic start myApp tabs(myApp的项目的名称) 3.在运行项目之前,要先创建平台: ionic platform ...

  8. JQuery Validate验证显示错误提示位置

    验证多个Name值相同的元素: $(".send").click(function () { var a = 0; var b = 0; var c = 0; var d = 0; ...

  9. asp.net解决高并发的方案. (转自网络)

    最近几天一直在读代震军的博客,他是Discuz!NT的设计者,读了他的一系列关于Discuz!NT的架构设计文章,大呼过瘾,特别是Discuz!NT在解决高访问高并发时所设计的一系列方案,本人尤其感兴 ...

  10. Part 6 AngularJS ng repeat directive

    ng-repeat is similar to foreach loop in C#. Let us understand this with an example. Here is what we ...