String.prototype.trimStart()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
ThetrimStart() method ofString values removes whitespace from the beginning of this string and returns a new string, without modifying the original string.trimLeft() is an alias of this method.
In this article
Try it
const greeting = " Hello world! ";console.log(greeting);// Expected output: " Hello world! ";console.log(greeting.trimStart());// Expected output: "Hello world! ";Syntax
trimStart()trimLeft()Parameters
None.
Return value
A new string representingstr stripped of whitespace from its beginning (left side). Whitespace is defined aswhite space characters plusline terminators.
If the beginning ofstr has no whitespace, a new string is still returned (essentially a copy ofstr).
Aliasing
Aftertrim() was standardized, engines also implemented the non-standard methodtrimLeft. However, for consistency withpadStart(), when the method got standardized, its name was chosen astrimStart. For web compatibility reasons,trimLeft remains as an alias totrimStart, and they refer to the exact same function object. In some engines this means:
String.prototype.trimLeft.name === "trimStart";Examples
>Using trimStart()
The following example trims whitespace from the start ofstr, but not from its end.
let str = " foo ";console.log(str.length); // 8str = str.trimStart();console.log(str.length); // 5console.log(str); // 'foo 'Specifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-string.prototype.trimstart> |