首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在javascript中拼接数字

在javascript中拼接数字
EN

Stack Overflow用户
提问于 2021-08-24 00:33:12
回答 3查看 61关注 0票数 0

我正在尝试写1k,10k和100k,我试图找到一种形式的.splice,但是对于这样的数字,我可以将1000,10000和100000转换为k,同时对它们使用相同的公式。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2021-08-24 00:35:20

除以1000就行了。

代码语言:javascript
运行
复制
[1000, 10000, 100000].forEach(x => console.log(x / 1000 + 'k'));

要在需要时显示一个小数位,请执行以下操作:

代码语言:javascript
运行
复制
[1320, 14302, 193234].forEach(x => console.log(+(x / 1000).toFixed(1) + 'k'))

票数 2
EN

Stack Overflow用户

发布于 2021-08-24 00:41:37

代码语言:javascript
运行
复制
function kFormatter(num) {
  return Math.abs(num) >= 1000 ? Math.sign(num) * ((Math.abs(num) / 1000).toFixed(1)) + 'k' : Math.sign(num) * Math.abs(num)
}

console.log(kFormatter(1200)); // 1.2k
console.log(kFormatter(-1200)); // -1.2k
console.log(kFormatter(999.9)); // 999.9
console.log(kFormatter(-900)); // -900

票数 0
EN

Stack Overflow用户

发布于 2021-08-24 00:41:58

您可以使用substring()获取从开头到字符串长度减去3的所有字符,然后将句点和倒数第二个位置的字符连接起来:

代码语言:javascript
运行
复制
function format(s) {
  s = String(s)
  return s.substring(0, s.length - 3) + "." + s.substring(s.length - 3, s.length - 2) + 'k';
}
console.log(format(1000))
console.log(format(1100))
console.log(format(10000))
console.log(format(11000))

如果数字小于1000,我们可以执行长度检查,如果字符串的长度小于4,则在结果前面加上0

代码语言:javascript
运行
复制
function format(s) {
  s = String(s)
  return (s.length < 4 ? '0' : s.substring(0, s.length - 3)) + "." + s.substring(s.length - 3, s.length - 2) + 'k';
}
console.log(format(100))
console.log(format(1000))
console.log(format(1100))
console.log(format(10000))
console.log(format(11000))

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68900486

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档