在javascript中创建一个带有2位数字的数组
Making an array with 2 digit numbers in javascript
假设我得到了一个包含数字 19 的变量。我想用以下数字从中创建一个数组
var positions = [ "00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19" ];
这在javascript中是怎么可能的?
像这样:
var number = 19;
var arr = [];
for ( i = 0; i <= number ; i++ ) {
arr.push(i < 10 ? ("0" + i.toString()) : i.toString());
}
演示 : http://jsfiddle.net/Kfnnr/1/
或者:
var mynumber = 19,
myarr = String(Array(mynumber+1))
.split(',')
.map(function(el,i){return i<10 ? '0'+i : ''+i;});
对于零填充,您可能希望使用:
function padLeft(nr,base,chr){
base = base || 10;
chr = chr || '0';
var len = (String(base).length - String(nr).length)+1;
return len > 0? Array(len).join(chr)+nr : nr;
}
// usage
padLeft(1); //=> '01'
padLeft(1,100); //=> '001'
padLeft(1,10000,'-'); //=> '----1'
2019 年更新:在 es20xx 中,String.prototype
包含一个本机padStart
方法:
"1".padStart(2, "0"); //=> "01"
// ^ max length
// ^ fill string (or space if omitted)
本质上你想
填充0,当数字改变时,这里的答案是不够的和缩放。可能更好的解决方案是
function padZero(num, size) {
var s = num+"";
while (s.length < size) s = "0" + s;
return s;
}
使用这个例子终于解决了我自己的@@iterator函数接口问题;多谢
var myArray = [];
function getInterval (start, step, end, ommit){
for (start; start <= end; start += step) {
myArray.push( start < 10 ? ("" + start.toString()) : start.toString());
}
}
getInterval(2, 2, 20, 20);
myArray; // __proto__: Array
// (10) ["2", "4", "6", "8", "10", "12", "14", "16", "18", "20"]
myArray[4]; // "10"
相关文章:
- 键入最后一位数字后自动提交
- RegExp匹配任意字符串+8位数字
- RegEx查找4位数字前后的逗号
- 如何使用 num.toString 和 str.split 查找整数的最后一位数字
- Regex表示10位数字,其中没有't允许所有零、所有单个no和序列号
- 简单的Javascript方式,在输入字段的每5位数字后添加一个空格
- 输入只允许6位数字,逗号分隔后,允许角js中的另外6位数字
- 如何显示正好 2 位数字的 html 数字输入的输入值
- JS Regex的最后两位数字与前两位数字匹配
- Javascript-如何从长度有时不是静态的随机字符串中获得3位数字
- 正则表达式,只允许5位数字或字母字符后跟5位数字
- Javascript RegEx:在符号后获取1或2位数字(不包括该符号)
- 如何通过 javascript 在浮点数中保留小数点数后的 2 位数字
- Regex匹配除以7开头的10位数字以外的任何一组数字
- 从整数中删除最后一位数字
- 电话正则表达式,但希望使所有 10 位数字都相同无效
- 正则表达式 - 字符串不应包含超过 7 位数字
- 检查给定的 5 位数字中的所有 5 位数字是否相同
- 比较 OnKeyUp JavaScript 时只有第一位数字
- 在节点中生成随机 32 位数字