Fill an Array with Sequential Values
I've been contributing to Mozilla's awesome DevTools debugger because, well, I want to give back to the Firefox Engineers and all the developers who have stayed loyal to Firefox. Having my hand in loads of Mozilla projects is really satisfying, especially for my ego.
In any event, one task required me to fill an array with every number in a sequence, then I would filter out unwanted items based on another array. Here's how you can fill a range within an array:
const fillRange = (start, end) => { return Array(end - start + 1).fill().map((item, index) => start + index); }; const allLines = fillRange(0, numLines - 1); // [0, 1, 2, 3, 4, 5, ...]
From there I could filter out what I didn't want:
let executableLines = [/* series of line numbers with code */]; const emptyLines = allLines.filter(i => !executableLines.includes(i));
When the feature gets merged (...and no one complains about their Firefox debugger...) I'll share more about my contribution!
Would the instruction
not result in an array starting with zero as the first value?
Yes, you’re right! I’ve updated the post!
Nice! Thanks to this post I could do this:
Great post! Little contribution:
Using an arrow function with a single expression does not require a return statement or statement block. Thus, the line of code above could be reduced to.
This is great, but, one question. If I want to have a list with decimals numbers, how can I do it?
example: 0.1 to 5.0. (resp: 0.1, 0.2, 0.3 … 4.8, 4.9, 5)
How can I do this?
Thanks! :D
You could always map() the output of fillRange.
That should have been 1 to 51: