如何使用间距显示数字?

时间:2017-03-04 18:17:20

标签: javascript html

<html>
<head>
<script>
$("#submit").click(function(){
  var x = document.getElementById("value").value;
  document.getElementById("balance").innerHTML = x; 
});
</script>
</head>
<body>
<input type="number" id="value"></input>
<button id="submit>Submit</button>
<p id="balance"></p>
</body>
</html>

我希望按下提交时数字显示如下:
10个
100个
1 000
10 000
100 000
1 000 000
10 000 000
等...

2 个答案:

答案 0 :(得分:0)

function formatNumber(nr) {
   return nr.toString()
     .split("")
     .reverse()
     .map((n, idx) => idx % 3 === 0 ? n + " " : n)
     .reverse()
     .join("")
     .trim();
}


formatNumber(10000); // 10 000

不是函数的准确性,但对非十进制数字仍有效。

此处还有 javascript库
http://numbrojs.com/format.html

同时结帐:
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString
可能有用。

答案 1 :(得分:0)

您可以使用regular expression搜索字符串中的数字,并将其替换为额外的空格。

var i, s = '';

for (i = 1; i < 12; i++) {
    s += (i % 10);
    console.log(s.replace(/\d(?=(?:\d{3})+(?!\d))/g, '$& '));
}
.as-console-wrapper { max-height: 100% !important; top: 0; }