![]() |
坏坏的灌汤包 · 《深度剖析CPython解释器》31. ...· 10 月前 · |
![]() |
闯红灯的台灯 · 在java里actionPerformed是 ...· 1 年前 · |
![]() |
强健的四季豆 · Oracle通过job定时创建表_ITPUB博客· 1 年前 · |
![]() |
不敢表白的啤酒 · No connection could ...· 1 年前 · |
![]() |
踢足球的镜子 · Android之按钮点击事件(单击、双击、长 ...· 1 年前 · |
动态创建这个简单数组的最有效方法是什么?
var arr = [ "1", "2", "3", "4", "5", "6", "7", "8", "9", "10"];
假设我们可以从一个变量中获得数字10
var mynumber = 10;
听起来您只是想构造一个包含整数值的字符串版本的数组。一种简单的方法:
var arr = [];
for (var i = 1; i <= mynumber; i++) arr.push(""+i);
对于更有趣的版本,你可以做一个生成器...
function tail(i, maxval) {
return [i].concat(i < maxval ? tail(i+1, maxval) : []);
var arr = tail(1, mynumber);
var arr = [];
for(var i=1; i<=mynumber; i++) {
arr.push(i.toString());
}
var arr = [];
while(mynumber--) {
arr[mynumber] = String(mynumber+1);
}
如果你在问是否有一个内建的Pythonic
range
-like函数,那是没有的,你必须用蛮力的方式来做。也许你会对
rangy
感兴趣。
错误阅读了问题,已更正。尝试:
var myNumber = 100,
myarr = (function arr(i){return i ? arr(i-1).concat(i) : [i]}(myNumber));
只是为了好玩,如果你像这样扩展
Array
:
Array.prototype.mapx = function(callback){
return String(this).split(',').map(callback);
}
您可以使用:
var myNum = 100,
myarr = new Array(myNum).mapx(function(el,i){return i+1;});
和你想要动态填充的所有数组的方法一样。一个for循环。Suedo代码是
arr =array()
for(i; i<max; i++){
arr[]=i
}
这应该会对你有所帮助。
我会这样做:
var num = 10,
dynar = [...Array(num)].map((_,i) => ++i+"");
console.log(dynar);
![]() |
强健的四季豆 · Oracle通过job定时创建表_ITPUB博客 1 年前 |