π€£9π₯6β€5π2π€1
TypeScript 5.5 introduces support for new ECMAScript methods on the Set object: union, intersection, difference, and symmetricDifference. These methods allow for more intuitive and readable operations on sets.
π10β€4π₯4π€£1
CHALLENGE
const products = [
{ id: 1, name: 'Laptop', price: 1200, category: 'Electronics' },
{ id: 2, name: 'Headphones', price: 100, category: 'Electronics' },
{ id: 3, name: 'Book', price: 15, category: 'Books' },
{ id: 4, name: 'Shirt', price: 25, category: 'Clothing' },
{ id: 5, name: 'Coffee Mug', price: 10, category: 'Kitchen' }
];
const result = products
.filter(p => p.price > 20)
.map(p => ({ name: p.name, value: p.price * 0.9 }))
.reduce((acc, item) => {
acc.names.push(item.name);
acc.total += item.value;
return acc;
}, { names: [], total: 0 });
console.log(result);
β€9π2π₯1
What is the output?
Anonymous Quiz
20%
{ names: ['Laptop', 'Headphones', 'Book', 'Shirt'], total: 1214 }
48%
{ names: ['Laptop', 'Headphones', 'Shirt'], total: 1192.5 }
16%
{ total: 1192.5, names: ['Laptop', 'Headphones', 'Shirt'] }
16%
{names: ['Laptop', 'Headphones', 'Shirt'], total: 1192.5}
π₯9π€6π5β€3π€£1
CHALLENGE
const person = {
name: 'Alice',
greet() {
return `Hello, I'm ${this.name}`;
},
farewell: () => `Goodbye from ${this.name}`
};
const greetFn = person.greet;
const farewellFn = person.farewell;
console.log(person.greet());
console.log(greetFn());
console.log(farewellFn());
β€4
What is the output?
Anonymous Quiz
29%
Hello, I'm Alice TypeError: Cannot read property 'name' of undefined Goodbye from undefined
40%
Hello, I'm Alice Hello, I'm undefined Goodbye from undefined
21%
Hello, I'm Alice Hello, I'm Goodbye from Alice
10%
Hello, I'm Alice Hello, I'm undefined Goodbye from Alice
β€7π3π₯1π€1
Matteo Collina notes the Node.js ecosystem is βat a critical junctureβ, with v18 and earlier now βEnd-of-Lifeβ. He breaks down what that really means for users of legacy versions, and why you should skip Active LTS v20 and leap straight to v22 for maximum future-proofing. If you have to stay on older versions, though, Matteo shares an option to consider.
Matteo Collina
Please open Telegram to view this post
VIEW IN TELEGRAM
β€8π2π₯1
CHALLENGE
function task1() {
console.log('A');
setTimeout(() => console.log('B'), 0);
Promise.resolve().then(() => console.log('C'));
Promise.resolve().then(() => setTimeout(() => console.log('D'), 0));
Promise.resolve().then(() => console.log('E'));
setTimeout(() => console.log('F'), 0);
console.log('G');
}
task1();
// What is the order of the console output?
What is the output?
Anonymous Quiz
24%
A G B F C E D
32%
A B G C E F D
22%
A G C E B F D
21%
A G C E B D F
π7π€£3β€2π₯2
Please open Telegram to view this post
VIEW IN TELEGRAM
π€£26β€17π1
CHALLENGE
function* fibonacci() {
let [a, b] = [0, 1];
while (true) {
yield a;
[a, b] = [b, a + b];
}
}
const fib = fibonacci();
const result = [];
for (let i = 0; i < 4; i++) {
result.push(fib.next().value);
}
const sum = result.reduce((total, num) => total + num, 0);
console.log(sum);
π5β€3
β€5π3π₯1π€1
CHALLENGE
const date = new Date('2023-05-15T12:30:00Z'); // A specific UTC date
const formatter = new Intl.DateTimeFormat('en-US', {
year: 'numeric',
month: 'long',
day: 'numeric',
hour: '2-digit',
minute: '2-digit',
timeZone: 'America/New_York'
});
const parts = formatter.formatToParts(date);
const month = parts.find(part => part.type === 'month').value;
const day = parts.find(part => part.type === 'day').value;
const hour = parts.find(part => part.type === 'hour').value;
console.log(`${month} ${day}, at ${hour}`);
β€4
What is the output?
Anonymous Quiz
17%
May 15, at 8
32%
May 15, at 08
30%
May 15, at 08 AM
20%
May 15, at 12
π5π€1
React continues to be a major dependency in the JavaScript world but recent innovations have led to much discussion about how it should move forward. Redux maintainer Mark Erikson gives an overview of Reactβs development over time, what led to some of its innovations, and dispels some βFUD and confusionβ about where it's headed.
Mark Erikson
Please open Telegram to view this post
VIEW IN TELEGRAM
β€9π4π₯2
CHALLENGE
function processData(input) {
try {
if (typeof input !== 'string') {
throw new TypeError('Input must be a string');
}
if (input.length === 0) {
throw new Error('Input cannot be empty');
}
return input.toUpperCase();
} catch (error) {
if (error instanceof TypeError) {
return `Type error: ${error.message}`;
}
return `Error: ${error.message}`;
}
}
console.log(processData(''));
β€9π1
What is the output?
Anonymous Quiz
53%
Error: Input cannot be empty
21%
undefined
13%
''
13%
Type error: Input must be a string
β€1
Give this Web-based tool one or more npm package names (or even your package.json file) and you can see a visualization of the dependency graphs for those packages, including where they intersect. Packages can be colored by various criteria (such as number of maintainers) and you can download SVGs of the graphs.
Kieffer, Brigante, et al.
Please open Telegram to view this post
VIEW IN TELEGRAM
π8β€4π₯2π€£1
CHALLENGE
const user = {
name: 'Alice',
age: 30
};
const handler = {
get(target, prop) {
if (prop in target) {
return target[prop];
}
return `Property '${prop}' doesn't exist`;
},
set(target, prop, value) {
if (prop === 'age' && typeof value !== 'number') {
console.log(`Error: ${value} is not a valid age`);
return false;
}
target[prop] = value;
return true;
}
};
const userProxy = new Proxy(user, handler);
userProxy.age = '31';
userProxy.job = 'Developer';
console.log(userProxy.job);
β€2π₯1
What is the output?
Anonymous Quiz
27%
31 is not a valid age Developer
40%
Error: 31 is not a valid age Developer
24%
Error: 31 is not a valid age Property 'job' doesn't exist
9%
Error: 31 is not a valid age undefined
π2π₯2