js中substring与substr的学习。

时间:2024-01-19 21:40:32

今天在工作的过程中,看到js中两个双胞胎函数。分别是substring与substr。顿时被两个可恶的家伙给迷惑住了,不知道具体有什么作用。、

先来看看substring手册是怎么介绍的。

js中substring与substr的学习。

手册解释的还是比较清楚的。不过还是用我的自己话给总结一下,顺便来个栗子巩固一下。

在这里你可以把字符串当成类数组的对象。既然是数组,那么就有下标,下标是从0开始的。

start  与 stop 都不能是负数。下标不能为负所致。

开始数值不能比结束的还大,否则会颠倒开始与结束的次序。

截取的字符串数量,是结尾减开始。

栗子:

//第一种情况
msg = 'RoverLiang';
tmp = msg.substring(3, 2);
alert(tmp); //弹出 v //第二种情况
msg = "RoverLiang";
tmp = substring(3, 0);
alert(tmp); //弹出Rov //总结 substring总是再start与end两个参数中选择一个比较小的作为开始位。

再来看看substr是怎么回事?

js中substring与substr的学习。

 //第一种情况
msg = 'RoverLiang';
tmp = msg.substr(3, 2);
alert(tmp); //返回er //第二种情况
msg = 'RoverLiang';
tmp = msg.substr(2, 3);
alert(tmp); //返回ver //第三种情况

msg = 'RoverLiang';
          tmp = msg.substr(-2, 3);
          alert(tmp); //返回ng 该函数总是总前往后截的不够三个了,只能截2个

//第四种情况

msg = 'RoverLiang';
         tmp = msg.substr(-2, -3);
         alert(tmp); //什么也不返回,因为截取是一个负数。