String.substring() Substring (legacy)

Last updated: 2026-09-09

String.substring() Substring (legacy)

substring extracts between indices, swapping out-of-order args; prefer slice in new code.

CategoryStrings
ES versionES1

📝 Syntax

const sub = str.substring(start, end);

⚙️ Parameters

startStart index (inclusive); negatives treated as 0.
endOptional. End index (exclusive); defaults to the end.

Returns:The extracted substring.

Mutates the original:No (returns a new value)

▶ Example

Edit the code, press Run, and see the result in the output panel:

Output:

Java
Java
⚠️ Warning substring treats negatives as 0 and swaps out-of-order args — the opposite of slice.
ℹ️ info substring is legacy (ES1) — use slice for new work.

🌐 Browser support

Browser ChromeChrome EdgeEdge FirefoxFirefox SafariSafari OperaOpera
String.substring() v1 v12 v1 v1 v1
Supported by all modern browsers
More case studies coming soon — check back later.

📚 Related Tutorials

❓ FAQ

Qsubstring or slice?
AUse slice: negative support, no arg swapping. substring is legacy only.
QWhat does substring(3, 1) return?
AArgs are swapped to substring(1, 3). slice(3, 1) returns empty string.
QDoes substring support negatives?
ANo — negatives become 0. Use slice(-3) to count from the end.
Web-Tutorial.com

Web-Tutorial Tech Team

A team of developers maintaining programming tutorials. Each tutorial is written and reviewed by developers with expertise in that field. We work to keep our content accurate and reliable — if you spot an issue, please let us know.

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏