如何在JavaScript中生成数字/字符序列?

有没有办法在JavaScript中生成字符或数字序列?

例如,我想创建包含八个1的数组。 我可以用for循环做,但想知道是否有一个jQuery库或JavaScript函数可以为我做?


你可以制作你自己的可重用功能,例如:

function makeArray(count, content) {
   var result = [];
   if(typeof content == "function") {
      for(var i = 0; i < count; i++) {
         result.push(content(i));
      }
   } else {
      for(var i = 0; i < count; i++) {
         result.push(content);
      }
   }
   return result;
}

然后你可以做任何一个这些:

var myArray = makeArray(8, 1);
//or something more complex, for example:
var myArray = makeArray(8, function(i) { return i * 3; });

你可以在这里试一试,注意上面的例子完全不依赖于jQuery,所以你可以不使用它。 你只是没有从图书馆获得任何这样的东西:)


没有for循环,这里是一个解决方案:

Array.apply(0, Array(8)).map(function() { return 1; })

解释如下。

Array(8)产生一个包含8个元素的稀疏数组,全部undefinedapply技巧将把它变成一个密集阵列。 最后,在map ,我们替换undefined的(相同)值1


for (var i=8, a=[]; i--;) a.push(1);
链接地址: http://www.djcxy.com/p/17687.html

上一篇: How to generate sequence of numbers/chars in javascript?

下一篇: What is the JavaScript >>> operator and how do you use it?