我需要你的帮助。
我想创建一个在数字前添加一些零的函数。总字符串应具有的最大位数为6.以下是示例:
9 -> 000009
14 -> 000014
230 -> 000230
1459 -> 001459
21055 -> 021055
987632 -> 987632 (Do nothing, there's already 6 digits)
答案 0 :(得分:12)
适用于IE5-11,Firefox,Chrome等。假设整数输入。
function pad(n) { return ("000000" + n).slice(-6); }
运行代码段进行测试:
<html>
<body>
<input id="stdin" placeholder="enter a number" maxlength="6"><button onclick="test()">Test</button>
<textarea id="stdout" style="width:100%;height:20em;padding:1em;"></textarea>
<script type="text/javascript">
function pad(n) { return ("000000" + n).slice(-6); }
function test() {
var n = parseInt( document.getElementById('stdin').value);
var e = document.getElementById('stdout').innerHTML += n + ' = ' + pad(n) + '\n';
}
</script>
</body>
</html>
&#13;
答案 1 :(得分:5)
以下内容将为数字字符串添加零,直到长度等于6。
var s = '9876'
while(s.length < 6){
s = '0' + s
}
alert(s)
答案 2 :(得分:3)
还有一个。 。 。这个适用于:
代码:
public int findSong(String searchtitle) {
String str;
int index = 0;
for(Song s : songs){
if(s.title.equalsIgnoreCase(searchtitle))
return index;
index++;
}
}
以下是一些输入变化的示例结果:
function padZerosToLength (value, minLength, padChar) {
var iValLength= value.toString().length;
return ((new Array((minLength + 1) - iValLength).join(padChar)) + value);
}
。 。 。长度各不相同:
padZerosToLength(1, 6, 0); ===> 000001
padZerosToLength(12, 6, 0); ===> 000012
padZerosToLength(123, 6, 0); ===> 000123
padZerosToLength(1234, 6, 0); ===> 001234
padZerosToLength(12345, 6, 0); ===> 012345
padZerosToLength(123456, 6, 0); ===> 123456
。 。 。并且具有不同的填充字符:
padZerosToLength(1, 1, 0); ===> 1
padZerosToLength(1, 2, 0); ===> 01
padZerosToLength(1, 3, 0); ===> 001
padZerosToLength(1, 4, 0); ===> 0001
padZerosToLength(1, 5, 0); ===> 00001
padZerosToLength(1, 6, 0); ===> 000001
答案 3 :(得分:1)
您需要将数字转换为字符串。然后我将该字符串拆分为一个数组,然后将“0”添加到该数组的前面,直到长度为6.然后加入。查看此repl或查看以下代码:http://repl.it/piT
var num = 14;
var lengthOfNum = 6;
var numString = num.toString();
var numArray = numString.split('');
var returnString = '';
while (numArray.length < 6) {
numArray.unshift('0');
}
returnString = numArray.join('');
答案 4 :(得分:0)
递归解决方案只是为了它:
function padNumberString(numberString) {
if (numberString.length >= 6) {
return numberString;
}
return padNumberString('0' + numberString);
}
答案 5 :(得分:0)
编辑:我的解决方案质量不是很高。
请参阅下面的@Roberto's answer,这是最佳解决方案。如果提问者想将其更改为接受的答案,我可以删除此答案。
答案 6 :(得分:-1)
一个简单的解决方案是
.jawcontain {display: flex;flex-direction: column;justify-content: space-between;border: white solid 7px;border-radius: 23px;}
.jaw {background-color: rgb(24, 24, 24);border-radius: 5%;display: flex;flex-direction: row;padding-top: 2%;padding-bottom: 5%;border: 10px solid rgb(0, 151, 255);justify-content: space-around;}
.hala {border: white solid 2px;padding-left: 10%;border-radius: 5%;margin-right: 2% display: flex;flex-basis: 40%;flex-direction: column;background: black;justify-content: space-around;}
答案 7 :(得分:-2)
我已经使用SugarJs API很长一段时间了,他们的填充功能很棒。
http://sugarjs.com/api/Number/pad
(9).pad(6, true) --> 000009
(14).pad(6, true) --> 000014
等...