Как добавить ведущие нули к числу
Короткий ответ
Преобразуйте число в строку и дополните её слева методом padStart():
console.log(String(7).padStart(3, '0'));Результат:
007Время
Так собирают время в привычном формате:
const hours = 9;
const minutes = 5;
console.log(String(hours).padStart(2, '0') + ':' + String(minutes).padStart(2, '0'));Результат:
09:05Номер заказа
padStart() удобен для номеров фиксированной длины:
const orderId = 42;
console.log('ORD-' + String(orderId).padStart(6, '0'));Результат:
ORD-000042Частая ошибка
У чисел нет метода padStart(), он есть у строк. А если число уже длиннее нужной длины, оно не обрезается:
try {
(7).padStart(3, '0');
} catch (error) {
console.log(error.name);
}
console.log(String(12345).padStart(3, '0'));Результат:
TypeError
12345Функции из этого ответа
- String.prototype.padStart — Дополняет строку слева до нужной длины.
- String.prototype.padEnd — Дополняет строку справа до нужной длины.