for लूप से शुरुआत से अंत तक (अंत शामिल नहीं) संख्याएं जनरेट करें और स्ट्रिंग में जोड़ें।
बुनियादी फंक्शन
function printRange(start, end) {
const result = [];
for (let i = start; i < end; i++) {
result.push(i);
}
return result.join(', ');
}
// उपयोग
console.log(printRange(10, 20)); // "10, 11, 12, 13, 14, 15, 16, 17, 18, 19"
ES6+ मॉडर्न तरीके
// Array.from + keys
const range1 = Array.from({ length: end - start }, (_, i) => start + i);
// स्प्रेड + keys (केवल छोटी रेंज के लिए)
const range2 = [...Array(end - start).keys()].map(i => start + i);
// जनरेटर फंक्शन (मेमोरी कुशल)
function* rangeGenerator(start, end) {
for (let i = start; i < end; i++) yield i;
}
const range3 = [...rangeGenerator(10, 20)];
स्टेप (कदम) के साथ
function rangeWithStep(start, end, step = 1) {
const result = [];
for (let i = start; i < end; i += step) {
result.push(i);
}
return result;
}
console.log(rangeWithStep(0, 10, 2)); // [0, 2, 4, 6, 8]
console.log(rangeWithStep(10, 0, -1)); // [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
चलाने का तरीका
node range-numbers.js
आउटपुट
10,11,12,13,14,15,16,17,18,19
उपयोग के मामले
- ड्रॉपडाउन में वर्ष/महीना/दिन विकल्प जनरेट करना
- चार्ट/ग्राफ के लिए डेटा पॉइंट्स
- पेजिनेशन नंबर
- टेस्ट डेटा जनरेशन
लॉडश/यूटिलिटी लाइब्रेरी के साथ
// Lodash
_.range(10, 20); // [10, 11, ..., 19]
_.range(0, 10, 2); // [0, 2, 4, 6, 8]
// या छोटी यूटिलिटी
const range = (start, end, step = 1) =>
Array.from({ length: Math.ceil((end - start) / step) }, (_, i) => start + i * step);