js substr 与 substring 有什么区别吗
在 JavaScript 中,substr
和 substring
是用于提取字符串的两个方法,它们的功能类似,但有一些区别:
1. substr(start, length) 方法:
-
参数:
start
:必需。要提取的子字符串的起始位置。如果为负数,表示从字符串末尾开始计数。length
:可选。要提取的字符数。如果省略或为负数,则提取到字符串的末尾。
-
返回值:
- 返回从指定位置开始的指定长度的子字符串。
-
示例:
javascriptCopy Codevar str = "Hello, world!"; console.log(str.substr(1, 4)); // 输出 "ello" console.log(str.substr(-6)); // 输出 "world!"
2. substring(start, end) 方法:
-
参数:
start
:必需。要提取的子字符串的起始位置。如果为负数,会被当作 0。end
:可选。要提取的子字符串的结束位置(不包括该位置的字符)。如果省略或为负数,会被当作字符串的长度。
-
返回值:
- 返回位于两个指定下标之间的子字符串。
-
示例:
javascriptCopy Codevar str = "Hello, world!"; console.log(str.substring(1, 4)); // 输出 "ell" console.log(str.substring(4)); // 输出 "o, world!"
区别总结:
substr
的第二个参数是要提取的字符数,而substring
的第二个参数是要提取的子字符串的结束位置。substr
允许第一个参数为负数,表示从字符串末尾开始计数;而substring
不允许负数参数,会被当作 0。- 当
start
参数大于end
参数时,substr
会将它们交换,而substring
会将负数参数视为 0。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程
2018-04-20 Action与Func 用法