JS字符串截取:slice(), substr(), substring()

5星 · 超过95%的资源 需积分: 32 3 下载量 42 浏览量 更新于2024-08-04 收藏 226KB PDF 举报
"这篇资源主要介绍了JavaScript中三种截取字符串的方法:`substr()`、`slice()`和`substring()`。这三种方法都是用来从原始字符串中提取出一部分子串。" 在JavaScript中,处理字符串时经常需要截取部分字符,这里详细讲解了三种常见的方式。 1. `substr()`方法: `substr()`方法接受两个参数,第一个参数是截取子字符串的起始位置,第二个参数是截取的长度。例如,`s.substr(startIndex, length)`。在示例1中,用于截取URL的扩展名,`s.lastIndexOf(".")`找到最后一个"."的位置,然后截取其后的4个字符,得到"html"。如果省略第二个参数,`substr()`将从起始位置截取到字符串的末尾。如果第一个参数为负值,如`-1`,则表示从字符串末尾开始截取,相当于正向索引的反向计算。 但需要注意的是,`substr()`在ECMAScript标准中已不再推荐使用,推荐使用更通用的`slice()`和`substring()`。 2. `slice()`方法: `slice()`方法与`substr()`类似,也是接受两个参数,表示截取的起始和结束下标。它返回的子串包含起始位置的字符,但不包括结束位置的字符。如果第二个参数省略,`slice()`将截取到字符串的末尾。当第一个参数大于第二个参数时,`slice()`会交换两个参数的顺序进行截取。 3. `substring()`方法: `substring()`也接受两个参数,用法与`slice()`基本相同,但它不会交换参数位置,即使第一个参数大于第二个参数,截取的子串仍然只包含起始位置的字符而不包括结束位置的字符。 在示例2中,`substring()`用于截取URL中的主机名,通过`indexOf()`找到特定字符的位置,然后截取两下标之间的字符串。 总结,这三种方法在处理字符串截取时各有特点,开发者可以根据实际需求选择合适的方法。在最新的JavaScript规范中,`slice()`和`substring()`由于其更稳定的性质,通常被视为更好的选择。在处理字符串时,理解这些方法的差异和用法是非常重要的,有助于编写更高效、可维护的代码。