Задать вопрос
yarkov
@yarkov
Помог ответ? Отметь решением.

Как выводить нужный символ в зависимости от числа?

Мне надо числа больше 10000 сокращать и выводить так:

Для примера возьмем число 12000
Если число между 11500 и 12000, то выводить ≈12 т.
Если число между 12000 и 12500, то выводить >12 т.
Если число равно 12000, то выводить 12 т.

UPD: не надо код, подскажите алгоритм
  • Вопрос задан
  • 125 просмотров
Подписаться 1 Простой 1 комментарий
Решение пользователя Алексей Лауд К ответам на вопрос (3)
kshshe
@kshshe
Frontend developer
Можно что-то такое:
function formatNumber(number) {
	if (number <= 1e4) return number.toString();
	const rest = (number / 1e3) % 1;
	const thousands = Math.floor(number / 1e3) + " т";
	if (rest === 0) {
		return thousands;
	}
	if (rest < 0.5) {
		return ">" + thousands;
	}
	if (rest === 0.5) {
		return ">" + thousands;
	}
	if (rest > 0.5) {
		return "≈" + thousands;
	}
}

Алгоритм, думаю, понятен.
Ответ написан
Комментировать