如何掌握JavaScript截取字符串的三种高效方法?
- 内容介绍
- 文章标签
- 相关推荐
本文共计793个文字,预计阅读时间需要4分钟。
JavaScript 提供了三种截取字符串的方法:slice()、substring() 和 substr()。它们都可以接受一个或两个参数:
- slice(start, end):从 start 位置开始截取到 end 位置,但不包括 end 位置。- substring(start, end):与 slice 类似,但 start 和 end 参数都是必填的,且不会超出字符串长度。- substr(start, length):从 start 位置开始截取指定 length 长度的字符串。
例如,假设有一个字符串 var stmp=rcinn.cn;使用 slice(3) 会输出 cinn.cn。
JS提供三个截取字符串的方法,分别是:slice(),substring()和substr(),它们都可以接受一个或两个参数:
var stmp = "rcinn.cn";
使用一个参数
alert(stmp.slice(3));//从第4个字符开始,截取到最后个字符;返回"nn.cn"
alert(stmp.substring(3));//从第4个字符开始,截取到最后个字符;返回"nn.cn"
使用两个参数
alert(stmp.slice(1,5))//从第2个字符开始,到第5个字符;返回"cinn"
alert(stmp.substring(1,5));//从第2个字符开始,到第5个字符;返回"cinn"
如果只用一个参数并且为0的话,那么返回整个参数
alert(stmp.slice(0));//返回整个字符串
alert(stmp.substring(0));//返回整个字符串
返回第一个字符
alert(stmp.slice(0,1));//返回"r"
alert(stmp.substring(0,1));//返回"r"
//在上面的例子中我们可以看出slice()和substring()的用法是相同的,返回的值也是一样的,但当参数为负数时,他们的返回值却不一样,看下面的例子
alert(stmp.slice(2,-5));//返回"i"
alert(stmp.substring(2,-5));//返回"rc"
//从上面两个例子可以看出slice(2,-5)实际上是slice(2,3),负5加上字符串长度8转换成正3(若第一位数字等于或大于第二位数字(slice()注意:这里第二位数字如果是负数是加完字符串长度后的数字,而不是显示的数字例:length=11,(7,-6),-6+11=5第二位小于第一位),则返回空字符串);而substring(2,-5)实际上是substring(2,0),负数转换为0,substring总是把较小的数作为起始位置。
alert(stmp.substring(1,5))//从第2个字符开始,到第5个字符;返回"cinn"
alert(stmp.substr(1,5));//从第2个字符开始,截取5个字符;返回"cinn."
var phone = 15989012100;
phone.slice(-6) 取倒数后6位(第二个参数不用写0),return ‘012100 ';
phone.slice(-6,-4) 取倒数后4位到倒数6位,(-6+11,-4+11)=(5,7);
// 日期比较大小 当日期每个月都小1时 var nowdate = new Date(); item = 2016-7-16; temp = item.split('-'); if (temp[0] != curYear || temp[1] != curMonth) { return; } temp[1] = parseInt(temp[1]) + 1; date = new Date(temp.join('-')); if(date>=nowdate){ 执行A; }else{ 执行B; }
替换指定字符串后的字母
var abc = 'adadada=ss'; var j = abc.substring(abc.indexOf('=')+1,abc.length); var dsd =abc.replace(j,'haha'); --> dsd = 'adadada=haha'
以上所述是小编给大家介绍的JS截取字符串的三种方法,希望对大家有所帮助。在此也非常感谢大家对自由互联网站的支持!
本文共计793个文字,预计阅读时间需要4分钟。
JavaScript 提供了三种截取字符串的方法:slice()、substring() 和 substr()。它们都可以接受一个或两个参数:
- slice(start, end):从 start 位置开始截取到 end 位置,但不包括 end 位置。- substring(start, end):与 slice 类似,但 start 和 end 参数都是必填的,且不会超出字符串长度。- substr(start, length):从 start 位置开始截取指定 length 长度的字符串。
例如,假设有一个字符串 var stmp=rcinn.cn;使用 slice(3) 会输出 cinn.cn。
JS提供三个截取字符串的方法,分别是:slice(),substring()和substr(),它们都可以接受一个或两个参数:
var stmp = "rcinn.cn";
使用一个参数
alert(stmp.slice(3));//从第4个字符开始,截取到最后个字符;返回"nn.cn"
alert(stmp.substring(3));//从第4个字符开始,截取到最后个字符;返回"nn.cn"
使用两个参数
alert(stmp.slice(1,5))//从第2个字符开始,到第5个字符;返回"cinn"
alert(stmp.substring(1,5));//从第2个字符开始,到第5个字符;返回"cinn"
如果只用一个参数并且为0的话,那么返回整个参数
alert(stmp.slice(0));//返回整个字符串
alert(stmp.substring(0));//返回整个字符串
返回第一个字符
alert(stmp.slice(0,1));//返回"r"
alert(stmp.substring(0,1));//返回"r"
//在上面的例子中我们可以看出slice()和substring()的用法是相同的,返回的值也是一样的,但当参数为负数时,他们的返回值却不一样,看下面的例子
alert(stmp.slice(2,-5));//返回"i"
alert(stmp.substring(2,-5));//返回"rc"
//从上面两个例子可以看出slice(2,-5)实际上是slice(2,3),负5加上字符串长度8转换成正3(若第一位数字等于或大于第二位数字(slice()注意:这里第二位数字如果是负数是加完字符串长度后的数字,而不是显示的数字例:length=11,(7,-6),-6+11=5第二位小于第一位),则返回空字符串);而substring(2,-5)实际上是substring(2,0),负数转换为0,substring总是把较小的数作为起始位置。
alert(stmp.substring(1,5))//从第2个字符开始,到第5个字符;返回"cinn"
alert(stmp.substr(1,5));//从第2个字符开始,截取5个字符;返回"cinn."
var phone = 15989012100;
phone.slice(-6) 取倒数后6位(第二个参数不用写0),return ‘012100 ';
phone.slice(-6,-4) 取倒数后4位到倒数6位,(-6+11,-4+11)=(5,7);
// 日期比较大小 当日期每个月都小1时 var nowdate = new Date(); item = 2016-7-16; temp = item.split('-'); if (temp[0] != curYear || temp[1] != curMonth) { return; } temp[1] = parseInt(temp[1]) + 1; date = new Date(temp.join('-')); if(date>=nowdate){ 执行A; }else{ 执行B; }
替换指定字符串后的字母
var abc = 'adadada=ss'; var j = abc.substring(abc.indexOf('=')+1,abc.length); var dsd =abc.replace(j,'haha'); --> dsd = 'adadada=haha'
以上所述是小编给大家介绍的JS截取字符串的三种方法,希望对大家有所帮助。在此也非常感谢大家对自由互联网站的支持!

