84669 orang belajar
152542 orang belajar
20005 orang belajar
5487 orang belajar
7821 orang belajar
359900 orang belajar
3350 orang belajar
180660 orang belajar
48569 orang belajar
18603 orang belajar
40936 orang belajar
1549 orang belajar
1183 orang belajar
32909 orang belajar
例如:指定返回字符串长度是4,操作数是5,如何将这个5,变为'0005'返回
谢谢大家的回答!回答里有好几种思路,受益匪浅,再次感谢大家的回答,谢谢!
光阴似箭催人老,日月如移越少年。
function foo(str){ str ='00000'+str; return str.substring(str.length-5,str.length); }
javascript//给数字字符串补零,不支持负数 function padNumber(num, fill) { //改自:http://blog.csdn.net/aimingoo/article/details/4492592 var len = ('' + num).length; return (Array( fill > len ? fill - len + 1 || 0 : 0 ).join(0) + num); }
javascript
//给数字字符串补零,不支持负数 function padNumber(num, fill) { //改自:http://blog.csdn.net/aimingoo/article/details/4492592 var len = ('' + num).length; return (Array( fill > len ? fill - len + 1 || 0 : 0 ).join(0) + num); }
曾经拜读过在js中做数字字符串补0 这篇文章,受益匪浅,这个是在月影提供的版本上改进强壮了一点点的实现。 前辈们的思考值得我们学习。
不支持负数的话,可以这样:
function zfill(num, size) { var s = "000000000" + num; return s.substr(s.length-size); }
javascriptfunction preZeroFill (num, size) { if (num >= Math.pow(10, size)) { //如果num本身位数不小于size位 return num.toString(); } else { var _str = Array(size + 1).join('0') + num; return _str.slice(_str.length - size); } } preZeroFill(5, 4);
function preZeroFill (num, size) { if (num >= Math.pow(10, size)) { //如果num本身位数不小于size位 return num.toString(); } else { var _str = Array(size + 1).join('0') + num; return _str.slice(_str.length - size); } } preZeroFill(5, 4);
此方法借鉴自captainblue的回答,并做优化,给赞请给captainblue.
https://github.com/alexei/sprintf.js
function prefix(num, val) { return (new Array(num).join('0') + val).slice(-num); }
new Array(4).join('0').concat(5)
function padLeft(number, size) { return number.toFixed(size - number.toString().length).replace('.', '').split('').reverse().join(''); }
javascriptif (!String.prototype.zfill) { String.prototype.zfill = function(len) { if (len == undefined || typeof len != 'number' || this.length >= len) {return this.toString()} return Array(len - this.length + 1).join('0') + this; } }
if (!String.prototype.zfill) { String.prototype.zfill = function(len) { if (len == undefined || typeof len != 'number' || this.length >= len) {return this.toString()} return Array(len - this.length + 1).join('0') + this; } }
javascriptfunction prefix(size, num) { var sLen = ('' + num).length; if (sLen >= size) { return '' + num; } var preZero = (new Array(size)).join('0'); return preZero.substring(0, size - sLen) + num; }
function prefix(size, num) { var sLen = ('' + num).length; if (sLen >= size) { return '' + num; } var preZero = (new Array(size)).join('0'); return preZero.substring(0, size - sLen) + num; }
参考了ls的答案。
曾经拜读过在js中做数字字符串补0 这篇文章,受益匪浅,这个是在月影提供的版本上改进强壮了一点点的实现。
前辈们的思考值得我们学习。
不支持负数的话,可以这样:
此方法借鉴自captainblue的回答,并做优化,给赞请给captainblue.
https://github.com/alexei/sprintf.js
参考了ls的答案。