
JavaScript中的substr与substring方法使用对比
5星
- 浏览量: 0
- 大小:None
- 文件类型:PDF
简介:
在JavaScript中,`substring`和`substr`都是被用来从字符串中提取子串的方法,并且它们之间有细微的差别。
`substring`功能及其实现方式:该方法通过指定`start`和`end`参数来获取所需子串,并确保不会包括末位字符。其语法结构中包含两个关键字段:分别对应着字符串处理时的重要区间划分依据。语法规则需要严格遵守。```javascript
stringObject.substring(start, end)
```
参数定义如下:
- `start`:必填项,表示子字符串起始位置。该位置对应于原始字符串中的第一个字符,其索引值为0。
- `end`(可选):指定子字符串的截止索引。若未提供,则`substring`操作将延续至原始字符串的末尾。
当`start`位置大于`end`位置时,函数会自动交换这两个值并返回正确的子字符串。如果遇到超出实际长度的情况,则参数会被调整至有效范围。对于负数参数,“start”会被视为0处理;而对于“end”,则将其转换为字符串长度加上其绝对值进行计算。举例:```javascript
var str = 0123456789;
console.log(str.substring(0)); 0123456789
console.log(str.substring(5)); 56789
console.log(str.substring(10));
console.log(str.substring(-5)); 0123456789(相当于str.substring(5))
console.log(str.substring(-10)); 0123456789(相当于str.substring(0))
console.log(str.substring(2, 5)); 234
console.log(str.substring(2, 12)); 23456789
```该方法接收两个参数:`start`和`length$`。它的工作方式与常规有所不同,因为它从所述起始位置提取所需数量字符的部分。语法体系的深入分析是构建高效编程语言的基础要素之一;在这一过程中,语法规则的规范性特征必须被系统性地研究。```javascript
stringObject.substr(start, length)
```
参数说明:
- `start`:必须是子字符串的起始位置。
- `length`(可选):用于截取子字符串的数量。
函数substr的作用是从指定的位置开始,并根据给定的长度提取相应的字符序列。
`substr`的特性如下:
- 当start值为负时,它会被视为`str长度加上该start值得结果进行运算`。
- 若length参数的取值范围在零及以下,则将返回一个空字符串。
举例说明其特点
试述其特点
举几个例子说明```javascript
var str = 0123456789;
console.log(str.substr(0)); 0123456789
console.log(str.substr(5)); 56789
console.log(str.substr(10)); (因为10已经超出了字符串的长度)
console.log(str.substr(12)); (同上)
console.log(str.substr(-5)); 6789(相当于str.substr(5))
console.log(str.substr(-10)); 0123456789(相当于str.substr(0))
console.log(str.substr(2, 3)); 234
console.log(str.substr(2, -2)); 01(相当于str.substr(2, str.length - 2))
console.log(str.substr(-1, 5)); 01234(相当于str.substr(str.length - 1, 5))
```
1. `substring`仅接收两个索引参数,而`substr`则接受一个位置指针和一个长度参数。
2. 在截取操作中,`substring`会省略末位字符的位置指标值,与之相比,`substr`会包括起始位置并延伸至指定长度的范围。
3. 当传入负数作为`start`参数时,`substring`将其视为零偏移量,而其他函数则会被转换为从字符串尾部开始计算的具体位置。
4. 如果指定了负值用于`length`参数,则会调用另一套机制进行处理:对于`substr`而言,这会导致截取操作从指定起始位置延伸至字符串末端;而对于`substring`来说,该参数将被忽略,并按照常规方式捕获到末尾部分。
在实际开发过程中,依据具体需求选择适合的截取方式能够更加精确地控制所获取的字符串内容。如果目标仅仅是获取到指定的位置而不关注字符串的整体长度,则采用`substring`函数会更加合适;而如果需要精准控制截取的字符数量,则应选用`substr`函数。
全部评论 (0)


