首页 > 解决方案 > 将数值拆分为单个数字范围

问题描述

我有以下代码可以将小时数倒计时到某个时间。出于 CSS 的目的,我需要将数字拆分为单个跨度,例如:

<p>Hours Left</p>
<span>4</span>
<span>6</span>

并不是<span>46</span>

你能帮我实现它吗?

我正在使用以下代码:

var end = new Date('12/18/2018');

var _second = 1000;
var _minute = _second * 60;
var _hour = _minute * 60;
var timer;

function showRemaining() {
  var now = new Date();
  var distance = end - now;
  if (distance < 0) {
    clearInterval(timer);
    document.getElementById('countdown').innerHTML = 'EXPIRED!';
    return;
  }
  var hours = Math.floor((distance) / _hour);
  document.getElementById('countdown').innerHTML = hours;
}

timer = setInterval(showRemaining, 1000);
<p id="countdown"></p>

标签: javascriptsplitnumbersnumber-formatting

解决方案


像这样:

var hours = 12;
var hours_html = hours.toString().replace(/(.)/g, "<span>$1</span>");
// "<span>1</span><span>2</span>"

推荐阅读