跳到主要内容

你不是已登录。您的编辑将被放置在队列中,直到同行评审.

我们欢迎编辑,使文章更容易理解,对读者更有价值。由于社区成员审阅了编辑内容,请尝试使帖子比您发现的更好,例如,通过修改语法或添加其他资源和超链接。

如何创建包含1…N的数组

我正在寻找其他方法来创建一个包含1到N的JavaScript数组,其中N只有在运行时才知道。

变量foo=[];对于(var i=1;i<=N;i++){foo.push(i);}

对我来说,我觉得应该有一种不用循环的方法来完成这项工作。

答案

取消
4
  • 8
    同样,您也可以在ES6中执行以下操作:数组.from({length:N},(v,k)=>k). 评论 2015年6月8日9:19
  • 首选Xappli的方法:Array.from是为几乎完全相同的场景创建的,它意味着一个映射回调。这是一个很好的解决方案,可以解决希望在类似数组的对象上使用Array方法的一般问题,而无需使用诸如数组.prototype.map.call例如,对于从返回的NodeList文档.query选择或全部.developer.mozilla.org/en/docs/Web/JavaScript/Reference/… 评论 2015年10月16日2:50
  • 我将此与下划线范围语法进行权衡,范围读起来更好。 评论 2015年11月6日5:13
  • 从技术上讲不是阵列起始位置将稀疏值转换为未定义值。相反阵列(5)被称为arguments对象,该对象反过来将稀疏值解释为未定义的值:) 评论 2016年10月22日11:21