两个方法都用于截取字符串,但用法不同:
substr(start, length) 是用于截取从起始位置开始的指定数量字符,第二个参数表示要提取的数量,默认是到字符串的结束位置。
substring(start, end) 是用于提取字符串中两个指定索引号之间的字符,第二个参数表示要提取的字符串的结束位置,默认是到字符串的结束位置。
① 都用于截取字符串; ② 第一个参数都是表示提取字符的开始索引位置;
① 第一个参数的取值范围不同;
substr() 的第一个参数可以是负整数,也可以是正整数;
substring() 的第一个参数只能是非负整数。
① 第二个参数不同。
substr() 的第二个参数表示要提取的字符数量,不选默认表示提取到结束的位置;
substring() 的第二个参数表示索引结束的位置,提取的结果不包括该索引的值。
作用:截取从 start 位置开始的指定数量字符
start:必填,提取字符的位置。如果为负值,则被看作 a.length + start,其中 a.length 为字符串的长度(例如,如果 start 为 -3,则被看作 a.length + (-3))。
length:可选,提取的字符数量,不选就是全部,也就是到结束的位置。
- const str1 = '我是小草莓'
- console.log(str1.substr(1)) // 是小草莓
- console.log(str1.substr(-1)) // 莓
- console.log(str1.substr(1, 3)) // 是小草
作用:提取字符串中两个指定索引号之间的字符
start:必填,非负整数,需要截取的第一个字符的索引。该索引位置的字符作为返回的字符串的首字母。
end:可选。一个0到字符串长度之间的整数,以该数字为索引的字符不包含在截取的字符串内。
- const str2 = '我是小草莓'
- console.log(str2.substring(0)) // 我是小草莓
- console.log(str2.substring(2, 3)) // 小