Exercise 11: Lazy Evaluation (generator)
Problem Statement
Create a function `lazyRange(start, end)` that returns a generator function that lazily generates values.
Sample Output:
const range = lazyRange(1, 5); range.next().value => 1 range.next().value => 2
Solution
function* lazyRange(start, end) {
for (let i = start; i <= end; i++) yield i;
}Explanation
Overall Goal:
- Generator function se lazy evaluation implement karna.
Real world:
- Memory efficiency: large sequences.
- Infinite sequences: on-demand generation.