CHALLENGE
const data = { a: 1, b: 2, c: 3 };
const { a, ...rest } = data;
const newObj = { ...rest, a, d: 4 };
const arr = [1, 2, 3, 4, 5];
const [first, , third, ...remaining] = arr;
const result = [...remaining, third, first];
console.log(newObj);
console.log(result);
What is the output?
Anonymous Quiz
22%
{ a: 1, b: 2, c: 3, d: 4 } [3, 1, 4, 5]
60%
{ b: 2, c: 3, a: 1, d: 4 } [4, 5, 3, 1]
12%
{ b: 2, c: 3, d: 4, a: 1 } [4, 5, 1, 3]
5%
{ a: 1, d: 4, b: 2, c: 3 } [1, 3, 4, 5]
π4β€2π₯2
A fantastic walkthrough of Chromeβs origins and its evolution over the years. Addy looks at key milestones (multi-process architecture for example), security, its steps into the world of AI, and more.
Addy Osmani
Please open Telegram to view this post
VIEW IN TELEGRAM
1β€7π2π₯2π€©2
CHALLENGE
console.log('1');
setTimeout(() => console.log('2'), 0);
Promise.resolve().then(() => console.log('3'));
queueMicrotask(() => console.log('4'));
setTimeout(() => console.log('5'), 0);
Promise.resolve().then(() => {
console.log('6');
return Promise.resolve();
}).then(() => console.log('7'));
console.log('8');
β€6π₯4π1
What is the output?
Anonymous Quiz
36%
1 8 3 4 6 7 2 5
29%
1 8 4 3 6 2 7 5
17%
1 8 3 6 4 7 2 5
17%
1 2 3 4 5 6 7 8
A project originally spawned from the BBCβs R&D department, Peaks renders audio waveforms to a canvas element and allows scrolling, zooming, and the sort of things you might otherwise see in an audio editor. LGPL licensed.
Chris Needham et al.
Please open Telegram to view this post
VIEW IN TELEGRAM
β€3π2π₯2
CHALLENGE
class CustomError extends Error {
constructor(message) {
super(message);
this.name = 'CustomError';
}
}
try {
try {
throw new CustomError('inner error');
} catch (e) {
console.log(e.name);
throw new Error('outer error');
}
} catch (e) {
console.log(e.message);
console.log(e instanceof CustomError);
}
β€1
What is the output?
Anonymous Quiz
43%
CustomError outer error false
32%
CustomError inner error true
17%
Error outer error false
8%
CustomError outer error true
β€5π₯2
π¨ Eyecons is a VS Code icon theme that automatically adapts the color of icons to fit your editor's main theme β well, from this list anyway.
π7β€1π₯1
CHALLENGE
const original = {
name: 'Sarah',
scores: [85, 92, 78],
details: {
age: 25,
city: 'Portland'
}
};
const copy1 = { ...original };
const copy2 = JSON.parse(JSON.stringify(original));
copy1.name = 'Emma';
copy1.scores.push(95);
copy1.details.age = 30;
console.log(original.name, original.scores.length, original.details.age);
β€5π₯4π1
β€4π2
In July, Socket warned us about a phishing campaign targeting npm package publishers. Sadly, a prolific package author (among others, like DuckDB, who explain how the attack worked on them) fell victim to the scam, resulting in some popular packages becoming compromised (like Chalk, debug, and others).
Gooding, Brown, et al. (Socket)
Please open Telegram to view this post
VIEW IN TELEGRAM
π₯3π€3β€1
CHALLENGE
const createLogger = (prefix) => (message) => `${prefix}: ${message}`;
const createCounter = () => {
let count = 0;
return () => ++count;
};
const withLogging = (fn) => (...args) => {
const result = fn(...args);
console.log(`Called with: ${args}, Result: ${result}`);
return result;
};
const counter = createCounter();
const loggedCounter = withLogging(counter);
const logger = createLogger('INFO');
console.log(loggedCounter());
console.log(logger(loggedCounter()));
π6β€2
CHALLENGE
function createCounter() {
let count = 0;
return {
increment: () => ++count,
decrement: () => --count,
getValue: () => count
};
}
const counter1 = createCounter();
const counter2 = createCounter();
counter1.increment();
counter1.increment();
counter2.increment();
console.log(counter1.getValue() + counter2.getValue());
π6π₯6β€1
CHALLENGE
const original = {
name: 'Emma',
skills: ['JavaScript', 'Python'],
config: { theme: 'dark', notifications: true }
};
const copy1 = { ...original };
const copy2 = JSON.parse(JSON.stringify(original));
const copy3 = Object.assign({}, original);
copy1.name = 'Sarah';
copy1.skills.push('React');
copy1.config.theme = 'light';
console.log(original.name);
console.log(original.skills.length);
console.log(original.config.theme);
β€3π€£2
What is the output?
Anonymous Quiz
30%
Emma, 3, light
29%
Sarah, 2, dark
23%
Emma, 2, dark
18%
Sarah, 3, light
π€6π2
Please open Telegram to view this post
VIEW IN TELEGRAM
1β€20π₯9π3