Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   функция в JS (https://javascript.ru/forum/misc/82718-funkciya-v-js.html)

dr_onov 18.06.2021 15:25

функция в JS
 
Доброго времени суток, форумчанам. Я новичок, и вот на глаза попалась функция и озадачила меня. Можете объяснить пошагово, что в ней происходит после проверок и для чего она используется?
function padString(str, num, symbol, right = true) {
    if(typeof str !== 'string') return 'str param should be a String type';
    if(typeof num !== 'number') return 'num param should be a Number type';
    if(str.length >= num) return str.substr(0, num);
    if(symbol.length > 1) return 'Symbol should be only 1 char';

    const symbolsQty = num - str.length;
    let localSymbols = '';

    for(let i = 0; i < symbolsQty; i++) {
        // localSymbols = localSymbols + symbol;
        localSymbols += symbol
    }

    return right ? str + localSymbols : localSymbols + str;
}


console.log(padString('vova', 10, '+'))
console.log(padString('should', 2))

od0201 18.06.2021 17:02

преобразует строку чтоб в ней было num символов
если num меньше строки, то обрезает
если больше, то заполяет новыми символами (в данном примере "+")
последний параметр указывает справа или слева заполнять

рони 18.06.2021 18:10

dr_onov,
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[html run]
... минимальный код страницы с вашей проблемой
[/html]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.


Часовой пояс GMT +3, время: 15:02.