What is the output?
Anonymous Quiz
22%
Sarah undefined Sarah 25
32%
undefined undefined Sarah undefined
35%
Sarah 25 Sarah 25
11%
undefined 25 Sarah undefined
❤7🔥5🤔1
Please open Telegram to view this post
VIEW IN TELEGRAM
❤10🤔5🤩5
CHALLENGE
let obj1 = { name: 'Sarah' };
let obj2 = { name: 'Mike' };
let obj3 = { ref: obj1 };
obj1.circular = obj1;
obj2.partner = obj3;
obj3.partner = obj2;
let weakMap = new WeakMap();
weakMap.set(obj1, 'data1');
weakMap.set(obj2, 'data2');
obj1 = null;
obj2 = null;
console.log(weakMap.has(obj3.ref));
console.log(obj3.partner.name);
❤5
What is the output?
Anonymous Quiz
24%
false Mike
35%
true undefined
25%
true Mike
16%
false undefined
❤2👍2🔥2
If Linus Torvalds applied for a junior coding job today…
He’d get rejected.
He doesn’t have “5 years React experience.”
That’s how broken hiring has become.😨
He’d get rejected.
He doesn’t have “5 years React experience.”
That’s how broken hiring has become.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣17🔥14❤3🤩1
CHALLENGE
function createCounter() {
let count = 0;
return {
increment: () => ++count,
decrement: () => --count,
get: () => count
};
}
const counter1 = createCounter();
const counter2 = createCounter();
counter1.increment();
counter1.increment();
counter2.increment();
console.log(counter1.get(), counter2.get());
const { increment, get } = counter1;
increment();
console.log(get());
👍5❤3🔥1
CHALLENGE
const promise1 = Promise.resolve('first');
const promise2 = new Promise(resolve => {
resolve('second');
});
const promise3 = Promise.resolve().then(() => 'third');
async function test() {
console.log('start');
const result1 = await promise1;
console.log(result1);
const result2 = await promise2;
console.log(result2);
const result3 = await promise3;
console.log(result3);
console.log('end');
}
test();
❤3
What is the output?
Anonymous Quiz
20%
start first end second third
33%
start end first second third
40%
start first second third end
7%
first second third start end
🔥5🤔2
Is there a difference between the previous code (red) and the new one (green) ?
Actually, there is 35second difference😠
The previous code was, on every loop, creating a new object, always deallocating and reallocating memory, while the second example creates one object (a cache) and save each item into it.
Eduard Krivánek
Actually, there is 35second difference
The previous code was, on every loop, creating a new object, always deallocating and reallocating memory, while the second example creates one object (a cache) and save each item into it.
Eduard Krivánek
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥4❤3
CHALLENGE
class EventBus {
constructor() {
this.events = new Map();
}
on(event, callback) {
if (!this.events.has(event)) {
this.events.set(event, []);
}
this.events.get(event).push(callback);
}
emit(event, data) {
if (this.events.has(event)) {
this.events.get(event).forEach(callback => callback(data));
}
}
}
const bus = new EventBus();
bus.on('user', name => console.log(`Hello ${name}`));
bus.on('user', name => console.log(`Welcome ${name}`));
bus.emit('user', 'Sarah');
bus.emit('admin', 'John');
❤4🤔3
What is the output?
Anonymous Quiz
39%
Hello Sarah Welcome Sarah
18%
Welcome Sarah
37%
Hello Sarah Welcome Sarah Hello John Welcome John
6%
Hello Sarah
❤8👍1🔥1
Since v23.6 (and in LTS since v22.18.0), Node has supported running (most) TypeScript code by stripping the types out first. The Calm team was excited about the potential for improving productivity and DX, and set a migration in process. Here’s a look at the challenges encountered and what the end results were.
Stuart Dotson (Calm)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤2👍1
CHALLENGE
const original = { a: 1, b: { c: 2 } };
const shallow = { ...original };
const deep = JSON.parse(JSON.stringify(original));
shallow.a = 10;
shallow.b.c = 20;
deep.a = 100;
deep.b.c = 200;
const frozen = Object.freeze({ x: 1, y: { z: 2 } });
frozen.x = 99;
frozen.y.z = 99;
console.log(original.a, original.b.c, frozen.x, frozen.y.z);
❤2🔥2
❤4👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍2🔥2🤔2
CHALLENGE
async function fetchData() {
console.log('1');
return Promise.resolve('data');
}
async function processData() {
console.log('2');
const result = await fetchData();
console.log('3');
return result;
}
console.log('4');
processData().then(() => console.log('5'));
console.log('6');
❤6🤔3👍2
Describing itself as ‘a fancy cron replacement’, Cronicle is a distributed task scheduler and runner, built around a Node app with a web based UI. GitHub repo.
Joseph Huckaby
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍5🔥1
CHALLENGE
const arr = new Array(1000000).fill(0).map((_, i) => i);
const results = [];
function method1() {
return arr.filter(x => x % 2 === 0).map(x => x * 2).slice(0, 3);
}
function method2() {
const result = [];
for (let i = 0; i < arr.length && result.length < 3; i++) {
if (arr[i] % 2 === 0) {
result.push(arr[i] * 2);
}
}
return result;
}
console.log(method1().join(','));
console.log(method2().join(','));