我希望我的输出为0000,0001,0002.如果我使用普通的js数学然后结果来0,1,2
var count=0000+1;
document.write(count);
输出 1
但我希望输出为 0001
怎么做?
答案 0 :(得分:3)
Javascript中的+
运算符用于添加和连接,具体取决于操作数。 0000+1
只是添加零和一,它给出了一个。您可以将字符串"000"
连接到数字1
,它会为您提供字符串"0001"
,这就是您要查找的内容。
这是一个总是有4个数字的函数,前导零。它的工作方式是将字符串"000"
与您的号码连接起来,然后根据需要缩短为4个字符。
function pad(n) {
var s = "000" + n;
return s.substr(s.length-4);
}
答案 1 :(得分:1)
使用:
var count = 1;
document.write( '0000'.substr( String(count).length ) + count );
答案 2 :(得分:0)
使用整数是不可能的,但你可以做类似的事情,
“000” 1
output => “0001”
P.S:也许如果你分享你的用例,我可以帮助你更好。答案 3 :(得分:0)
您可以使用lodash的padStart
您可以像以下一样使用它:
var count = 1;
_.padStart(count, 4, '0');
//this will give you 0001
_.padStart(23, 4, '0');
//this will give you 0023
答案 4 :(得分:0)
添加零,然后删除剩余的零:
function renameArtboards(){
var docRef = app.activeDocument;
var aB = docRef.artboards;
for(var a=0;a<aB.length;a++){
var curAB = aB[a];
var sNumber = "000" + [a+1];
curAB.name = sNumber.substr(sNumber.length-4);
}
}
renameArtboards();
答案 5 :(得分:0)
我知道我已经迟到一年半了,但是我现在在我的应用程序中碰巧需要这种逻辑。我认为最“优雅”的解决方案是:
const yourNumber = 32;
const defaultFill = "0000"
const formattedNumber = (defaultFill + yourNumber).substr(String(yourNumber).length)
这对于我的用例来说效果很好。如果您必须处理4位以上的数字,则可能会有一些限制-在这种情况下,您可能会丢失一些信息。注意这一点。
希望这对您有所帮助,加油!
答案 6 :(得分:0)
var JobNumber = 'JB-00000';
var digistextraction = JobNumber.substr(3,5);
var JobNumberTable=[];
for (var j = 0; j < 5; j++) {
k=1;
digistextraction = parseInt(digistextraction) + k;
JobNumberTable.push('JB-' + digistextraction.toLocaleString(undefined, {useGrouping: false, minimumIntegerDigits: 5}));
k++;
}
console.log(JobNumberTable);
答案 7 :(得分:-1)
最好的方法是
var NumberWithLeadingZeroes = "000" + 1;
alert(NumberWithLeadingZeroes);//Will give you "0001"
<强>更新强>
function NumberWithLeadingZeroes (n)
{
if ( n< 10 )
{
return ( '000' + n.toString () );
}
else if ( n< 100 )
{
return ( '00' + n.toString () );
}
else if ( n< 1000 )
{
return ( '0' + n.toString () );
}
else
{
return ( n);
}
}