2013-10-24 188 views
1

我想知道是否有一种更容易/更清晰的方式来展开一个整数6并使其成为一个数字数组[1, 2, 3, 4, 5, 6]取一个数字,并将它变成一个数组数组

这是我得到的,我讨厌它。

var pages = function(number_int){ 
    var numbers_array = []; 
    for (var i = 1; i <= number_int; i++) { 
     numbers_array.push(i); 
    } 
    return numbers_array; 
}; 

我很乐意使用下划线,如果可以的话。

+1

这的确是一个问题[codereview.se],但它是如此微不足道,我认为它不应该被迁移。 – 2013-10-24 19:49:23

+0

是的你是对的,但如果我把它发布到代码审查,没有人会看到它。 – ThomasReggi

+1

http://stackoverflow.com/questions/3746725/create-a-javascript-array-containing-1-n – georg

回答

2

在Underscore.js范围功能是非常方便的。

下面是定义:

_.range([start], stop, [step]) 
  • 开始:可选的,默认0
  • 车站:强制性
  • 步骤:可选的,默认1

注:范围产生的值在范围开始(含)和停止(独家)

所以,如果你的情况number_int = 6,产生[1, 2, 3, 4, 5, 6]您必须通过指定使用范围功能stopnumber_int + 1

最终的答案:

var pages = function(number_int){ 
    var numbers_array = []; 
    numbers_array = _.range(1,number_int + 1); 
    return numbers_array; 
}; 

的jsfiddle:https://jsfiddle.net/dineshchitlangia/xj8q5bea/4/

5

看那range功能underscore.js

相关问题