Please open Telegram to view this post
VIEW IN TELEGRAM
π€£43π4π₯2
CHALLENGE
class StateMachine {
constructor() {
this.state = 'idle';
this.transitions = {
idle: { start: 'running', reset: 'idle' },
running: { pause: 'paused', stop: 'stopped' },
paused: { resume: 'running', stop: 'stopped' },
stopped: { reset: 'idle' }
};
}
transition(action) {
const nextState = this.transitions[this.state]?.[action];
if (nextState) {
this.state = nextState;
return true;
}
return false;
}
}
const sm = new StateMachine();
console.log(sm.transition('start'));
console.log(sm.state);
console.log(sm.transition('reset'));
console.log(sm.state);
β€7π2π€1
What is the output?
Anonymous Quiz
23%
true running true idle
39%
true started false started
33%
true running false running
6%
false idle true idle
π2π₯2β€1
CHALLENGE
const target = { name: 'Sarah', age: 25 };
const handler = {
get(obj, prop) {
if (prop === 'toString') {
return () => `Person: ${obj.name}`;
}
return Reflect.get(obj, prop);
},
has(obj, prop) {
return prop !== 'age' && Reflect.has(obj, prop);
}
};
const proxy = new Proxy(target, handler);
console.log(proxy.name);
console.log('age' in proxy);
console.log(proxy.toString());
π€©2
What is the output?
Anonymous Quiz
21%
Sarah false [object Object]
42%
Sarah true [object Object]
30%
Sarah false Person: Sarah
6%
undefined false Person: Sarah
β€4π₯4π€©3π1
CHALLENGE
async function processData() {
console.log('Start');
const promise1 = new Promise(resolve => {
console.log('Promise 1 executor');
resolve('Result 1');
});
const promise2 = Promise.resolve('Result 2');
console.log('After promises created');
const result1 = await promise1;
console.log(result1);
const result2 = await promise2;
console.log(result2);
return 'Done';
}
processData().then(result => console.log(result));
What is the output?
Anonymous Quiz
37%
Start Promise 1 executor After promises created Result 1 Result 2 Done
28%
Promise 1 executor Start After promises created Result 1 Result 2 Done
15%
Start Promise 1 executor Result 1 After promises created Result 2 Done
20%
Start After promises created Promise 1 executor Result 1 Result 2 Done
β€3π1π₯1
The Chrome team has released an MCP server for Chrome DevTools, enabling agents like Claude Code or OpenAI Codex to use the DevTools to debug and analyze the performance and behavior of your webapps (or even just to automate the use of Chrome generally). Addy does a great job of explaining the potential here.
Addy Osmani
Please open Telegram to view this post
VIEW IN TELEGRAM
β€3π3π₯2
CHALLENGE
console.log('1');
Promise.resolve().then(() => {
console.log('2');
Promise.resolve().then(() => console.log('3'));
});
Promise.resolve().then(() => {
console.log('4');
});
setTimeout(() => console.log('5'), 0);
console.log('6');
β€4π4
βWeβve been busy,β says Cloudflare which recently announced itβs bringing Node.js HTTP server support to its Workers function platform. This post goes deep into the technicalities, covering what areas of the standard library is supported, how the file system works (Workers doesnβt have a typical file system), how input/output streams work, and more. And you can use all of this now.
James M Snell (Cloudflare)
Please open Telegram to view this post
VIEW IN TELEGRAM
β€6π₯3π1
CHALLENGE
function processData() {
try {
console.log('processing');
return 'success';
} catch (error) {
console.log('error caught');
return 'failed';
} finally {
console.log('cleanup');
}
}
const result = processData();
console.log('result:', result);
What is the output?
Anonymous Quiz
17%
error caught cleanup result: failed
52%
processing cleanup result: success
14%
processing cleanup result: undefined
17%
processing result: success cleanup
β€3π1