mrdubz
@mrdubz
front end developer

Формат числа в выводе .html()?

Задача сделать счетчик, который считает некие действия. В коде страницы есть такое

<span id="points">000</span>

Используя обычную вставку
var targetScore = 42; //временное значение
	
$('.target-item').click(function(){
	$(this).addClass('active');
	$(this).html(targetScore);
		
	var total = 0;
		
	$('.target-item').each(function(){       
		total += Number($(this).text());
	});
		
	$('#points').html(total);
});

добавляются значения в виде 1, 2 и т.д.

Как сделать добавление в виде 001, 002, etc и не больше 999?
  • Вопрос задан
  • 4072 просмотра
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
$('#points').html(('000'+total).substr(-3));
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
что бы не больше 999 это не проблема, можно использовать Math.min(999, total)
вам нужно добавлять ведущие нули, функции для этого найти не проблема:
// использовать как-то так:
// $('#points').html(pad(total, 3, '0'));
function pad(n, width, z) {
  z = z || '0';
  n = n + '';
  return n.length >= width ? n : new Array(width - n.length + 1).join(z) + n;
}
Ответ написан
rafuck
@rafuck
дописать нули вручную.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы