在JavaScript中访问字符串的子串


Posted in Javascript onJuly 07, 2015

 使用substring()或slice()方法(NN4+, IE4+),下面说明它们的具体用法。

      substring()的原型为:  

string.substring(from, to)

      第一个参数from指定了子字符串在原字符串中的起始位置(基于0的索引);第二个参数to是可选的,它指定了子字符串在原字符串的结束位置(基于0的索引),一般情况下,它应比from大,如果它被省略,那么子字符串将一直到原字符串的结尾处。

      如果参数from不小心比参数to大了会怎样?JavaScript会自动调解子字符串的起止位置,也就是说,substring()总是从两个参数中较小的那个开始,到较大的那个结束。不过要注意,它包含起始位置的那个字符,但不包含结束位置的那个字符。

var fullString = "Every dog has his day.";


   var section = fullString.substring(0, 4); // section is "Ever".


   section = fullString.substring(4, 0);   // section is also "Ever".


   section = fullString.substring(1, 1);   // section is an empty string.


   section = fullString.substring(-2, 4); // section is "Ever", same as fullString.substring(0, 4);  slice()的原型为: string.slice(start, end)

      参数start表示子串的起始位置,如果为负数,那么可以理解为倒数第几个开始,例如-3表示从倒数第三个开始;参数end表示结束位置,与start一样,它也可以为负数,其含义也表示到倒数第几个结束。slice()的参数可以为负数,所以要比substring()更加灵活,但没那么宽容了,如果start比end要大,它将返回一个空字符串(示例略)。

      还有一个方法是substr(),其原型为: 

string.substr(start, length)

      从原型可以看出它的参数的含义,start表示起始位置,length则表示子字符串的长度。JavaScript标准不提倡使用该方法。

Javascript 相关文章推荐
弹出广告特效代码(一个IP只弹出一次)
May 11 Javascript
圣诞节Merry Christmas给博客添加浪漫的下雪效果基于jquery实现
Dec 27 Javascript
js随机生成字母数字组合的字符串 随机动画数字
Sep 02 Javascript
简要了解jQuery移动web开发的响应式布局设计
Dec 04 Javascript
Node.js配合node-http-proxy解决本地开发ajax跨域问题
Aug 31 Javascript
Bootstrap源码解读导航(6)
Dec 23 Javascript
javascript实现电脑和手机版样式切换
Nov 10 Javascript
基于layui数据表格以及传数据的方式
Aug 19 Javascript
vuejs选中当前样式active的实例
Aug 22 Javascript
微信小程序适配iphoneX的实现方法
Sep 18 Javascript
详解react阻止无效重渲染的多种方式
Dec 11 Javascript
ES6中的Javascript解构的实现
Oct 30 Javascript
jQuery.each使用详解
Jul 07 #Javascript
JavaScript中字符串拼接的基本方法
Jul 07 #Javascript
简单介绍JavaScript中字符串创建的基本方法
Jul 07 #Javascript
浅谈JavaScript中运算符的优先级
Jul 07 #Javascript
浏览器中url存储的JavaScript实现
Jul 07 #Javascript
浅谈JavaScript中的作用域和闭包问题
Jul 07 #Javascript
深入分析下javascript中的[]()+!
Jul 07 #Javascript
You might like
PHP的历史和优缺点
2006/10/09 PHP
PHP新手上路(十一)
2006/10/09 PHP
PHP读取大文件的类SplFileObject使用介绍
2014/04/09 PHP
php递归删除目录下的文件但保留的实例分享
2014/05/10 PHP
php三元运算符知识汇总
2015/07/02 PHP
php上传图片获取路径及给表单字段赋值的方法
2016/01/23 PHP
利用Homestead快速运行一个Laravel项目的方法详解
2017/11/14 PHP
PHP如何实现阿里云短信sdk灵活应用在项目中的方法
2019/06/14 PHP
jQuery技巧大放送 学习jquery的朋友可以看下
2009/10/14 Javascript
javascript使用appendChild追加节点实例
2015/01/12 Javascript
JavaScript Ajax编程 应用篇
2016/07/02 Javascript
JavaScript之DOM_动力节点Java学院整理
2017/07/03 Javascript
使用FormData实现上传多个文件
2018/12/04 Javascript
Vue.js实现开发购物车功能的方法详解
2019/02/22 Javascript
vuejs移动端实现div拖拽移动
2019/07/25 Javascript
Vue最新防抖方案(必看篇)
2019/10/30 Javascript
JS三级联动代码格式实例详解
2019/12/30 Javascript
echarts浮动显示单位的实现方法示例
2020/12/04 Javascript
python迭代器的使用方法实例
2013/11/21 Python
详解python实现读取邮件数据并下载附件的实例
2017/08/03 Python
Python 迭代,for...in遍历,迭代原理与应用示例
2019/10/12 Python
Python识别html主要文本框过程解析
2020/02/18 Python
Jupyter notebook 远程配置及SSL加密教程
2020/04/14 Python
PyTorch实现重写/改写Dataset并载入Dataloader
2020/07/14 Python
ProBikeKit澳大利亚:自行车套件,跑步和铁人三项装备
2016/11/30 全球购物
英语专业学生个人求职信范文
2014/01/06 职场文书
党员教师一句话承诺
2014/05/30 职场文书
医院领导班子整改方案
2014/10/01 职场文书
教代会开幕词
2015/01/28 职场文书
师范生小学见习总结
2015/06/23 职场文书
辞职离别感言
2015/08/04 职场文书
安全教育的主题班会
2015/08/13 职场文书
初中思品教学反思
2016/02/20 职场文书
导游词之徐州-云龙山
2019/09/29 职场文书
护士年终工作总结不会写?各科护士模板总结
2020/01/02 职场文书
alibaba seata服务端具体实现
2022/02/24 Java/Android