slice,substr和substring的区别
2016-01-27 10:37
267 查看
首先,他们都接收两个参数,slice和substring接收的是起始位置和结束位置(不包括结束位置),而substr接收的则是起始位置和所要返回的字符串长度。直接看下面例子:
这里有个需要注意的地方就是:substring是以两个参数中较小一个作为起始位置,较大的参数作为结束位置。
如:
接着,当接收的参数是负数时,slice会将它字符串的长度与对应的负数相加,结果作为参数;substr则仅仅是将第一个参数与字符串长度相加后的结果作为第一个参数;substring则干脆将负参数都直接转换为0。测试代码如下:
1 var test = 'hello world'; 2 3 alert(test.slice(4,7)); //o w 4 alert(test.substring(4,7)); //o w 5 alert(test.substr(4,7)); //o world
这里有个需要注意的地方就是:substring是以两个参数中较小一个作为起始位置,较大的参数作为结束位置。
如:
alert(test.substring(7,4)); //o w
接着,当接收的参数是负数时,slice会将它字符串的长度与对应的负数相加,结果作为参数;substr则仅仅是将第一个参数与字符串长度相加后的结果作为第一个参数;substring则干脆将负参数都直接转换为0。测试代码如下:
1 var test = 'hello world'; 2 3 alert(test.slice(-3)); //rld 4 alert(test.substring(-3)); //hello world 5 alert(test.substr(-3)); //rld 6 alert(test.slice(3,-4)); //lo w 7 alert(test.substring(3,-4)); //hel 8 alert(test.substr(3,-4)); //空字符串
注意:IE对substr接收负值的处理有错,它会返回原始字符串。
相关文章推荐
- Lua学习笔记
- 使用Gradle管理你的Android Studio工程
- 2416开发记录十一:按键驱动(platform/中断)
- RegExp类型
- 表格功能之--前台筛选
- LOG_DEBUG
- 自定义NSLog宏
- 数学之路(机器学习实践指南)-文本挖掘与NLP(1)
- 20160127--Jquery的ajax与post使用
- 怀念油麻地
- 动态调试Android笔记
- 国安广视或将成为DVB+OTT重磅玩家
- HashMap遍历
- CSS中的Position、Float属性详解
- 保护继承
- HDU 2089 不要62
- 基于JavaScript实现瀑布流效果(循环渐近)
- Android基础知识学习记录
- Hack5-1 TextSwitcher实现平滑过渡
- SuperMap超图——使用SQLite数据库中的点位信息创建数据源并在图层中显示数据