作者lueichun (no anonymous)
看板Web_Design
标题[问题] 如何对0开头的数字加1
时间Mon May 1 12:47:46 2017
如果我现在有一个数字 叫0001
那我应该要怎麽做 才能做到0001+1 变成0002
0009+1 变成0010的效果
在JavaScript 0001会被当成字串 所以0001直接+1会变成00011
所以直接+1当然不行
感觉这个状况应该很多人都会遇到 但我目前还没找到可行的做法
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.136.199.33
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Web_Design/M.1493614068.A.861.html
1F:推 Qiqi: 先用数字做运算,然後前面补4个字串0,再用slice即可 05/01 12:55
2F:→ jmlntw: 去零→加一→补零 05/01 12:58
3F:推 vi000246: string to int ->int to string ->left pad 05/01 13:22
4F:→ ssccg: 不是0001会被当成字串,是0001本来就是字串 05/01 15:29
5F:→ ssccg: 你没有一个数字,只有一个字串,要做数字运算当然先转数字 05/01 15:30
6F:→ lueichun: 解决了 感谢 05/01 15:32
7F:推 ThreeWater: slice("0",4-Math. ceil(Math.log(num.length))) + nu 05/01 15:33
8F:→ ThreeWater: m 05/01 15:33
9F:→ jmlntw: '000' + (parseInt(num, 10) + 1)).slice(-4) 05/01 16:18
10F:→ jmlntw: ^( 抱歉最前面少个括号 05/01 16:19
11F:→ xlf: 先用正规表示法把0001变成1 转成数字+1之後 用padStart() 05/01 21:46
12F:→ xlf: 补上0 05/01 21:46
13F:推 jason82714: 数字直接运算 最後再从前面补零即可 05/02 20:28
14F:推 eight0: +"0001" + 1 05/06 07:56