js里slice,substr和substring的区别
JS 区别 substring Slice substr
2023-09-14 08:58:20 时间
string.slice(start, end)提取一个字符串 string.substring(start, end)提取一个字符串,end不支持负数
string.substr(start, len)提取一个长度为len的字符串
1、slice和substring接收的是起始位置和结束位置(不包括结束位置),而substr接收的则是起始位置和所要返回的字符串长度。直接看下面例子:
var test = hello world; alert(test.slice(4,7)); //o w alert(test.substring(4,7)); //o w alert(test.substr(4,7)); //o world
2、substring是以两个参数中较小一个作为起始位置,较大的参数作为结束位置。如:
alert(test.substring(7,4)); //o w
3、当接收的参数是负数时,slice会将它字符串的长度与对应的负数相加,结果作为参数;substr则仅仅是将第一个参数与字符串长度相加后的结果作为第一个参数;substring则干脆将负参数都直接转换为0。测试代码如下:
var test = hello world; alert(test.slice(-3)); //rld alert(test.substring(-3)); //hello world alert(test.substr(-3)); //rld alert(test.slice(3,-4)); //lo w alert(test.substring(3,-4)); //hel alert(test.substr(3,-4)); //空字符串
以下来自《JavaScript权威指南》p834:
JavaScript 数组方法 slice() 的 5 个示例 slice() 方法将数组部分的副本返回到新的数组对象中。这个对象是从 start 到 end 选择的。需要注意的是,此方法不会修改原始数组。此外,如果向其中一个数组添加新元素,则另一个数组不会受到影响。
相关文章
- JS框架_(JQuery.js)动画效果鼠标跟随
- JS框架_(JQuery.js)图片相册掀开切换效果
- JS框架_(Laydate.js)简单实现日期日历
- Bootstrap fileinput.js,最好用的文件上传组件
- js里slice,substr和substring的区别
- baguetteBox.js响应式画廊插件(纯JS)
- three.js之正投影摄像机与透视投影摄像机的区别
- js 反应&行动
- [Next.js] Consume Next.js API routes with the SWR library on the client-side
- [Vue] Use Vue.js Watchers to Respond to Async Updates
- js逆向的题目,练习题12题,css静态字体反爬,
- js es6 reduce用法示例:实现数据累加
- three.js(JS 三维模型库)介绍和入门
- Node.js 博客实例(一)简单博客
- js 取数组中某个对象的集合
- js笔试题
- JS中let和var的区别
- JS中的!=、== 、!==、===的用法和区别。
- JS 高级(三)继承、多态、ES5严格模式
- 【JS高级】js面向对象三大特性之多态_07
- 原生js实现随机验证码HTMl-JS
- LightningChart JS v4.0.0 and LightningChart NET
- JS中相等(==)和等全(===)的区别与练习
- jquery.js和jquery.min.js的区别介绍