|
|
1
184
你只需要一个简单的函数
如果要保留名称空间或其他内容,可以将其烘焙到库中。喜欢用 jQuery's extend . |
|
|
2
288
简单的方法。您可以为pad添加字符串乘法并将其转换为函数。
作为一个函数,
|
|
|
3
247
我不敢相信这里所有复杂的答案…只要用这个:
|
|
|
4
105
我最近真的不得不想出这样的办法。 我想必须有一种不用循环的方法。 这就是我想到的。
然后使用它提供一个数字到零的填充:
如果数字大于填充,则数字将超出填充范围:
小数也可以!
如果您不介意污染全局命名空间,可以直接将其添加到数字:
如果你想让小数占据填充空间:
干杯! XDR 提出 对数变化 这似乎表现得更好。 警告 :如果num等于零(例如zeropad(0,2)),则此函数失败。
说到表演, tomsmeding compared the top 3 answers ( 4 with the log variation )猜猜哪一个 少校 比其他两个强?:) |
|
|
5
55
这是我用来填充最多7个字符的数字。
这种方法对大多数人来说可能已经足够了。 编辑:如果要使其更通用,可以执行以下操作:
|
|
|
6
24
不幸的是,对于这个问题有很多不必要的复杂建议,通常涉及编写自己的函数来进行数学或字符串操作,或者调用第三方实用程序。但是,在基本JavaScript库中,只有一行代码可以实现这一点。将这一行代码包装在函数中可能是值得的,这样可以避免指定您不希望更改的参数(如本地名称或样式)。
这将产生文本值“005”。您还可以使用数字的toLocaleString函数将0填充到小数点的右侧。
这将产生文本值“5.00”。将usegrouping更改为true以对千使用逗号分隔符。
注意使用
|
|
|
7
20
如果预先知道填充数字不超过某个值,则有另一种方法可以在不使用循环的情况下执行此操作:
这里的测试用例: http://jsfiddle.net/jfriend00/N87mZ/ |
|
|
8
19
建议(第3阶段)ES2017方法
|
|
|
9
18
快速而肮脏的方式:
对于x=5和count=6,您将得到y=“000005” |
|
|
10
12
这是我为完成这项工作而设计的一个快速功能。如果有人有更简单的方法,请随意分享!
|
|
|
11
11
参加派对晚了,但我经常用这个结构做一些有价值的特别填充。
在哪里?
例如,填充到5位数,其中n=123:
这个的十六进制版本稍微详细一点:
注1:我也喜欢@profitehloz的解决方案,它是这个的字符串版本,使用slice()的nifty负索引功能。 |
|
|
12
11
我真的不知道为什么,但没有人以最明显的方式做这件事。这里是我的实现。 功能:
原型:
非常简单,我看不出这是怎么简单的。出于某种原因,我在这里已经出现过很多次了,所以人们只是尽量避免以任何代价出现“for”和“while”循环。对于这样一个8位数的填充,使用regex可能会花费更多的周期。 |
|
|
13
9
我用这个剪子得到一个5位数的表示
|
|
|
14
8
数学的力量!
x=要填充的整数
|
|
|
15
8
我没看到有人指出当你使用 String.prototype.substr() 如果是负数,则从右边开始计数。 运算问题的一个线性解决方案,即数字5的6位零填充表示,是:
概括起来,我们会得到:
|
|
|
16
7
第一个参数是任何实数,第二个参数是一个正整数,指定小数点左边的最小位数,第三个参数是一个可选的正整数,指定小数点右边的数字if。
所以
|
|
|
17
7
不要重新发明轮子,使用 underscore string :
|
|
|
18
7
这是ES6解决方案。
|
|
|
19
6
经过一段漫长的测试,在这个问题中找到了15种不同的功能/方法,我现在知道哪一种是最好的(最通用和最快的)。
我从这个问题的答案中选择了15个函数/方法,并编写了一个脚本来测量执行100个PAD所花费的时间。每个垫子都会垫上数字
我使用的代码可以在这里找到: https://gist.github.com/NextToNothing/6325915 您可以自己修改和测试代码。 为了获得最通用的方法,必须使用循环。这是因为有大量的人可能会失败,而这将是成功的。
那么,使用哪个循环呢?嗯,那将是一个
答案就像那些
就我个人而言,我尝试了一种不同的方法。我尝试使用递归函数填充字符串/数字。它的效果比加入数组的方法要好,但仍然不如for循环快。 我的职能是:
您可以使用my函数来设置填充变量,也可以不设置填充变量。就像这样:
就我个人而言,在测试之后,我会使用一个while循环的方法,比如
因此,我将使用以下代码:
您也可以将其用作原型函数,方法是使用以下代码:
|
|
|
20
6
ECMAScript 2017年: 使用 PADSTART 或 帕德兰
更多信息: |
|
|
21
5
在所有现代浏览器中,您都可以使用
这是MDN参考资料 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padStart |
|
|
22
4
不是说这个问题需要更多的答案,但我想我会添加这个简单的罗达什版本。
|
|
|
23
4
最新的方法要简单得多:
|
|
|
24
4
只是另一个解决方案,但我认为它更清晰。
|
|
|
25
3
这个不是本地的,但可能是最快的…
|
|
|
26
3
我的解决方案
用法
|
|
|
27
3
为什么不使用递归?
|
|
|
28
2
一些MonkeyPatching也可以工作
|
|
|
29
2
……等 干杯 |
|
|
30
2
这个 最简单的 最直接的解决方案。
|
|
|
code-geek · Jquery根据单选按钮选择隐藏或显示文本字段 1 年前 |
|
|
Alex · 在轻量级中同时解构和不解构变量 1 年前 |
|
|
Ângelo Rigo · ReactJS映射:如何迭代[关闭] 1 年前 |
|
|
bairog · 从按属性筛选的对象数组字典中创建值数组 1 年前 |
|
|
lokiuucx · JS对象属性返回未定义,尽管对象属性应该有值 1 年前 |