String.prototype.trimStart()

Метод trimStart() видаляє пробільні символи з кінця рядка. Для цього методу також існує псевдонім trimLeft().

Спробуйте його в дії

Синтаксис

trimStart()

trimLeft()

Повернене значення

Новий рядок, що містить значення початкового рядка str, у якого пробільні символи спочатку (з лівого боку) — обрізані.

Якщо початок рядка str не містить пробільних символів, однаково повертається новий рядок (практично — копія рядка str), без викидання жодних винятків.

Вживання псевдонімів

Для одноманітності з функціями, подібними до String.prototype.padStart, функція має стандартизоване ім'я trimStart. Щоправда, з міркувань сумісності вебу, метод trimLeft залишається псевдонімом для trimStart. В деяких рушіях це буквально означає:

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

Приклади

Застосування trimStart()

Наступний приклад виводить рядок 'foo ' в нижньому регістрі:

var str = '   foo  ';

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

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

Поліфіл

//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);
*/

Специфікації

Сумісність із браузерами

desktop mobile server
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet Deno Node.js
trimStart
Chrome Full support 66
Edge Full support 79
Firefox Full support 61
Internet Explorer No support No
Opera Full support 53
Safari Full support 12
WebView Android Full support 66
Chrome Android Full support 66
Firefox for Android Full support 61
Opera Android Full support 47
Safari on iOS Full support 12
Samsung Internet Full support 9.0
Deno Full support 1.0
Node.js Full support 10.0.0

Дивіться також