欢迎访问我的博客https://qqqww.com/,祝所有码农同胞们早日走上人生巅峰,迎娶白富美~~
先写下最终结论,这样方便阅读者快速使用:
- substring(a, b):指的是截取从开始位置到结束位置,
a
:开始位置,b
:结束位置的后一位- slice(a, b):指的是截取从开始位置到结束位置,且
a
和b
可以为负数,a
:开始位置,b
:结束位置的后一位- substr(a, b):指的是从开始位置
a
截取长度为b
的字符号才能,且a
和b
可以为负数,a:开始位置,b:要截取的字符串长度
substring
提取在
substring(a, b)
两个参数之间的字符串片段
语法
substring(a, b) // a:开始位置,b:结束位置的后一位
参数
-
a
: 必需,一个非负整数,规定截取字符串的第一个字符在原字符串中的位置,即规定了截取的开始位置 -
b
: 可选,一个非负整数,规定截取字符串的最后一个字符在原字符串中的位置的前一位,即规定了截取的终止位置,如果省略该参数,那么返回的子串会一直到字符串的结尾 -
注意:
- 如果参数
a = b
,则返回空字符串 - 如果
a > b
,则该方法会先交换这两个参数,再执行该方法程序
- 如果参数
返回值
返回一个新的字符串(a
位置到b - 1
位置的字符串片段)
实例
建议直接去浏览器控制台调试
var str = 'sajdadjsahdah'
str.substring(1, 3) // 'aj'
str.substring(1) // 'ajdadjsahdah'
str.substring(3, 1) // 'aj'
slice
提取在
slice(a, b)
两个参数之间的字符串片段
语法
slice(a, b) // a:开始位置,b:结束位置的后一位
参数
-
a
: 必需,正负整数都支持,正数表示从字符串头到尾的起始下标,负数表示从字符串的尾到头的起始下标 -
b
: 可选,正负整数都支持,正数表示从字符串头到尾的起始下标 - 1,负数表示从字符串的尾到头的起始下标 - 1 -
注意:
- 如果参数
a = b
或者a > b
,则返回空字符串
- 如果参数
返回值
返回一个新的字符串(a
位置到b - 1
位置的字符串片段)
实例
var str = 'sajdadjsahdah'
str.slice(1, 3)
// "aj"
str.slice(1)
// "ajdadjsahdah"
str.slice(1, 1)
// ""
str.slice(3, 1)
// ""
str.slice(-3, -1)
// "da"
str.slice(-1, -3)
// ""
str.slice(-3)
// "dah"
substr
提取
slice(a, b)
从a
开始,长度为b
的字符串
语法
substr(a, b) // a: 起始位置,b:截取的字符串长度
参数
-
a
: 必需,正负整数都支持,正数表示从字符串头到尾的起始下标,负数表示从字符串的尾到头的起始下标 -
b
: 可选,将要截取的字符串长度 -
注意:
- 如果省略参数
b
,那么返回的子串会一直到字符串的结尾
- 如果省略参数
返回值
返回一个新的字符串(从a
位置开始,长度为b
的字符串)
实例
var str = 'sajdadjsahdah'
str.substr(1, 3)
// "ajd"
str.substr(1)
// "ajdadjsahdah"
str.substr(-3, 3)
// "dah"
str.substr(3, 0)
// ""
网友评论