84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
例如:指定返回字符串长度是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的答案。