Creating a range of numbers in JavaScript

In languages like Ruby, there are often convenience methods to generate an array of numbers to iterate over, often called a range. For example:

(0..5).map { |x| puts x }

JavaScript doesn’t have such a method but using more recent version of ES6 you can get close to that behavior:

Array.from(Array(5).keys()) //=> [ 0, 1, 2, 3, 4 ]

Or and even cleaner version using array destructuring:

;[...Array(5).keys()] //=> [ 0, 1, 2, 3, 4 ]

Of course you could also use a library for this instead. Here is lodash’s _.range:

_.range(5) //=> [ 0, 1, 2, 3, 4 ]

← Read all articles