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
44%
CustomError outer error false
32%
CustomError inner error true
16%
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.
π8β€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π2
β€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()));
π7β€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);
β€4π€£4
What is the output?
Anonymous Quiz
30%
Emma, 3, light
26%
Sarah, 2, dark
27%
Emma, 2, dark
18%
Sarah, 3, light
π€7π2β€1
Please open Telegram to view this post
VIEW IN TELEGRAM
3β€39π₯11π7
CHALLENGE
const obj = {
name: 'Sarah',
regularMethod: function() {
return () => {
console.log(this.name);
};
},
arrowMethod: () => {
return () => {
console.log(this.name);
};
}
};
const regular = obj.regularMethod();
const arrow = obj.arrowMethod();
regular();
arrow();
β€4
What is the output?
Anonymous Quiz
36%
Sarah, Sarah
41%
Sarah, undefined
15%
undefined, Sarah
8%
undefined, undefined
β€2π€1
Please open Telegram to view this post
VIEW IN TELEGRAM
β€9π€4π₯1
CHALLENGE
console.log('1');
setTimeout(() => console.log('2'), 0);
Promise.resolve().then(() => console.log('3'));
setTimeout(() => console.log('4'), 0);
console.log('5');
Promise.resolve().then(() => {
console.log('6');
return Promise.resolve();
}).then(() => console.log('7'));
queueMicrotask(() => console.log('8'));
console.log('9');
π₯1
What is the output?
Anonymous Quiz
31%
1 5 9 2 4 3 6 7 8
30%
1 5 9 3 8 6 7 2 4
19%
1 9 5 3 6 7 8 2 4
19%
1 5 9 3 6 8 7 2 4
β€4π₯2π1
The big new feature is added support for inspecting HTTP/2 network calls made from Node in Chrome DevTools. There have also been some cryptography related enhancements and npm gets upgraded to v11.6.
MichaΓ«l Zasso
Please open Telegram to view this post
VIEW IN TELEGRAM
β€6π3π₯1