String.prototype.trimStart()

O método trimStart() remove espaços do começo de uma string. trimLeft() é um apelido para este método.

Experimente

Sintaxe

str.trimStart();
str.trimLeft();

Valor retornado

Uma nova string representando a string original sem os espaços no começo (fim à esquerda).

Descrição

Os métodos trimStart() / trimLeft() retornam a string sem os espaços no fim à esquerda. trimLeft() ou trimStart() não altera o valor da string original.

Aliasing

Para consistência com funções como String.prototype.padStart o nome padrão do método é trimStart. Entretanto, por razões de compatibilidade na web, trimLeft permanece como um apelido para trimStart. Em alguns motores isso significa:

js
String.prototype.trimLeft.name === "trimStart";

Polyfill

js
//https://github.com/FabioVergani/js-Polyfill_String-trimStart

(function (w) {
  var String = w.String,
    Proto = String.prototype;

  (function (o, p) {
    if (p in o ? (o[p] ? false : true) : true) {
      var r = /^\s+/;
      o[p] =
        o.trimLeft ||
        function () {
          return this.replace(r, "");
        };
    }
  })(Proto, "trimStart");
})(window);

/*
ES6:
(w=>{
    const String=w.String, Proto=String.prototype;

    ((o,p)=>{
        if(p in o?o[p]?false:true:true){
            const r=/^\s+/;
            o[p]=o.trimLeft||function(){
                return this.replace(r,'')
            }
        }
    })(Proto,'trimStart');

})(window);
*/

Exemplos

Usando trimStart()

O seguinte exemplo mostra uma string em caixa baixa 'foo ':

js
var str = "   foo  ";

console.log(str.length); // retorna 8

str = str.trimStart();
console.log(str.length); // retorna 5
console.log(str); // retorna 'foo  '

Especificações

Specification
ECMAScript Language Specification
# sec-string.prototype.trimstart

Compatibilidade com navegadores

BCD tables only load in the browser

Veja também