number转成字符串的问题?

如下图:
7cf78ce56761feceaf94fd1bc29c473.png

期望把num转成字符串000000

阅读 2.4k
5 个回答

不可能,num=0000 javascript 等价于const num=0 无论你代码里写多少个0,javascript 也不会保存位数信息。
你为什么想要这样的结果, 把你的需求写出来,看看有没有别的变通办法

JavaScript中,您可以使用toString()方法将数字转换为字符串。请注意,前导零对于数字没有意义,因此在将数字转换为字符串时,前导零将被忽略。

const num = 000000;
const str = num.toString();
console.log(str); // '0'

这里得到的字符串是 '0',因为数字0是没有前导零的。如果您要保留前导零并将其转换为字符串,可以使用字符串模板或拼接字符串的方法:

const num = 000000;
const str = String(num).padStart(6, '0');
console.log(str); // '000000'

我来盲猜一波,楼主是否是想统一一些数字格式,比如:

  • 时间:"12:25:20"
  • 价格:"19.99""20.00"

之类的,如果是这样,不妨试试比如21元1毛的价格使用Number(20.1).toFixed(2)即可得到字符串'20.10'

在js中

  1. 10进制数字前面是不带0的,
  2. 前面带0就说明是8进制(不过你在8进制里写0加上超过7的数字,会变成10进制,比如,08,09,079那会被认为是10进制前面加了0)
  3. 你写0开头的数字,在js里是8进制,这个数字就会自动转成8进制对应的10进制,回到了第一点关于10进制数字前面没0
  4. 为啥第一点会自动转成10进制,就好比你在num那写个1+1,最终会显示成2那样
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题