A resourceful newsletter featuring the latest and most important news, articles, books and updates in the world of #javascript π Don't miss our Quizzes!
Let's chat: @nairihar
Post #1570
5.81K
- π 16
- β€ 5
- π₯ 4
JA @javascript
Showing posts older than #1571 Β· Back to latest
function* reverseGenerator(arr) {
for (let i = arr.length - 1; i >= 0; i--) {
yield arr[i];
}
}
const result = [...reverseGenerator([1, 2, 3, 4, 5])].join('');
console.log(result);

function* alternatingGenerator() {
yield 1;
yield 2;
yield 3;
}
const gen = alternatingGenerator();
const result = [gen.next().value, gen.next().value, gen.next().value].reduce((acc, curr) => acc + curr, 0);
console.log(result);

function* fibGenerator() {
let a = 0, b = 1;
while (true) {
let next = a + b;
a = b;
b = next;
yield next;
}
}
const gen = fibGenerator();
const fibArray = Array.from({ length: 5 }, () => gen.next().value);
console.log(fibArray);


function* evenNumbers() {
let num = 0;
while (true) {
yield num;
num += 2;
}
}
const gen = evenNumbers();
const evens = Array.from({ length: 4 }, () => gen.next().value).map(n => n + 1);
console.log(evens);

const target = {
secret: "hidden",
reveal: "nothing"
};
const handler = {
get: function(obj, prop, receiver) {
if (prop === "secret") {
return "revealed";
}
return Reflect.get(...arguments);
}
};
const proxy = new Proxy(target, handler);
with (proxy) {
console.log(secret);
console.log(reveal);
}