TGViewer
JavaScript JavaScript @javascript · 31.1K subscribers
Post #3109 2.83K
CHALLENGE

function* range(start, end) {
while (start < end) {
yield start++;
}
}

function* evens(iter) {
for (const val of iter) {
if (val % 2 === 0) yield val;
}
}

function* take(n, iter) {
let count = 0;
for (const val of iter) {
if (count++ >= n) return;
yield val;
}
}

function* pipeline() {
yield* take(3, evens(range(1, 20)));
yield* take(2, range(10, 15));
}

const result = [...pipeline()];
console.log(result);
  • 🔥 2
  • 👍 1
More from @javascript
  1. Sep 25, 2026Post #3518
  2. Sep 25, 2026CHALLENGE let counter = 0; const mod = { get counter() { return counter; }, increment() {…
  3. Sep 24, 2026Post #3516
  4. Sep 24, 2026CHALLENGE class Base { static count = 0; static increment() { this.count++; return this.co…
  5. Sep 23, 2026🤩 tinyjs: Build JavaScript Desktop Apps in <10MB I built an app with this and was impress…
  6. Sep 23, 2026Post #3513
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →