JS中截取一个字符串的三种方法:
字符串.slice(开始索引,结束索引)
字符串.substring(开始索引,结束索引)
字符串.substr(开始索引,截取的长度)

如果需要截取到该字符串的最后,可以省略第二个参数:
字符串.slice(开始索引)
字符串.substring(开始索引)
字符串.substr(开始索引,开始到最后的长度)
字符串.substr(开始索引)

最后的截取出来的,是开始索引的字符到,结束索引的字符前面的字符,不包括结束的索引字符。
例如,测试代码和图示,“一二三四五”这个字符串,二的索引是1,四的索引是3,如果截取索引是1到3的字符串,结果是二三,而不是二三四。测试截取出来的不包括结束字符四。

如果想截取到最后一位,由于索引到4,而截止的索引该结束地方不包括,所以可以用省略第二个参数的方式,就是默认截取到最后一位。

在C#中substring也是裁剪字符串,第二个参数是长度,类似JS里的substr,虽然计算机语言很多都类似,但是每种语言的写法和特点不同,为了避免语法差异引起的误解,可以进行测试。

测试代码:

<body>
<input type="button" value="点击截取" onclick="F1();"><br>
<script language="javascript" type="text/javascript">
function F1(){
var str1="一二三四五",str2="12345";
var c1=str1.slice(1,3);
var str1_indexend=str1.length-1;
console.log("该字符串共有"+str1.length+"个字符,索引从0开始到"+str1_indexend);
console.log("\"二\"的索引为:"+str1.indexOf("二")+",\"四\"的索引为:"+str1.indexOf("四"));
console.log("从索引为1的到索引为3的slice截取的字符串为:"+c1);
var c2=str1.substring(1,3);
console.log("从索引为1的到索引为3的subString截取的字符串为:"+c2);
var c3=str1.substr(1,2);
console.log("从索引为1的开始截取2个长度,substr截取后的字符串为:"+c3);
var c4=str1.slice(1);c5=str1.substring(1);c6=str1.substr(1,4);
console.log("截取到最后一位的方法,方法1,slice省略第二个参数:"+c4+";substring省略第二个参数:"+c5+";substr索引到最后的长度或省略:"+c6);
};
</script>
</body>

图示:

JS的slice、substring、substr字符串截取的更多相关文章

  1. 字符串截取函数slice, substring, substr

    在日常项目需求中,常常会遇到需要截取字符串操作的工作,而ECMAScript为我们提供了原生的截取字符串的函数,而且提供了三个:slice, substring, substr.我们怎么判断在什么时候 ...

  2. JS字符串截取函数slice(),substring(),substr()的区别

    在JS中,slice().substring().substr()都有截取字符串的作用,那他们有哪些用法上的区别呢?如果你也有疑惑,这篇文章或许能够帮助到你. 一.substring() substr ...

  3. 关于js的string的3个函数slice,substring,substr对比

    slice,substring,substr三个函数都是截取字符串,但是对参数的处理有区别 参数处理相似的两个函数式slice和substring slice(start,end)和substring ...

  4. slice,substring,substr的区别

    1.都为正整数//例子数据 var arr = [1,2,3,4,5,6,7], var str = "helloworld!"; //注意这里有个!号也算一位若有空格,空格也算一 ...

  5. MySQL字符串函数substring:字符串截取

    MySQL 字符串截取函数:left(), right(), substring(), substring_index().还有 mid(), substr().其中,mid(), substr() ...

  6. MySQL substring:字符串截取 (转载)

    MySQL 字符串截取函数:left(), right(), substring(), substring_index().还有 mid(), substr().其中,mid(), substr() ...

  7. 字符串截取slice() substring() substr()的区别?

    获取子字符串 slice()        substr()    substring() 不会修改字符串本身,他们只是返回一个基本类型的字符串值 var str='abcdefghijklmn'; ...

  8. JS 中的substring ,substr ,slice,split,join

    substr with different arguments passed in: str.substring(startNum,stopNum ); str.slice(startNum,stop ...

  9. 怎样理解String的slice(), subString(), substr()三个方法

    String.prototype.slice() 是js字符串的切片工具方法, 用于对字符串做'裁剪'操作, 不改变原字符串. 'helloworld'.slice(0,5); // 'hello'; ...

随机推荐

  1. 集合(Collection)类

    集合(Collection)类是专门用于数据存储和检索的类.这些类提供了对栈(stack).队列(queue).列表(list)和哈希表(hash table)的支持.大多数集合类实现了相同的接口. ...

  2. LightOJ - 1369 - Answering Queries(规律)

    链接: https://vjudge.net/problem/LightOJ-1369 题意: The problem you need to solve here is pretty simple. ...

  3. The Last Goodbye 电影《霍比特人3:五军之战》插曲

    https://music.163.com/#/song?id=29755223 I saw the light fade from the sky我看到天空褪去色彩On the wind I hea ...

  4. Codeforces Round #383 D

    传送门 Description Arpa has a rooted tree (connected acyclic graph) consisting of n vertices. The verti ...

  5. Zk单机多实例部署

    一.环境准备 当前环境:centos7.3一台软件版本:zookeeper-3.5.2部署目录:/usr/local/zookeeper启动端口:2181,2182,2183配置文件:/usr/loc ...

  6. ES6中的class类的理解

    传统的javascript中只有对象,没有类的概念.它是基于原型的面向对象语言.原型对象特点就是将自身的属性共享给新对象.这样的写法相对于其它传统面向对象语言来讲,很有一种独树一帜的感脚!非常容易让人 ...

  7. elasticsearch type类型创建时注意项目,最新的elasticsearch已经不建议一个索引下多个type

    https://www.elastic.co/guide/cn/elasticsearch/guide/current/mapping.html如果有两个不同的类型,每个类型都有同名的字段,但映射不同 ...

  8. 《sicp》八皇后谜题

    <sicp>八皇后谜题 书中练习2.42.八皇后谜题问的是如何将八个皇后摆在国际象棋棋盘上,使得任意一个皇后都不能攻击另一个皇后(也就是说任意两个皇后都不能在同一行,同一列和同一对角线上) ...

  9. CI框架常用函数(AR数据库操作的常用函数)

    用户手册地址:http://codeigniter.org.cn/user_guide/index.html 1.查询表记录$this->db->select(); //选择查询的字段$t ...

  10. 截取完整网页图片的方法 Chrome 浏览器

    截取完整网页图片的方法:https://sspai.com/post/42193 要想使用截图功能,你需要首先确保 Chrome 已升级至 59 或更高版本.在想要截图的网页中,首先按下 ⌘Comma ...