CHALLENGE
function processUserData(data) {
try {
if (!data) {
throw new Error('No data provided');
}
if (!data.name) {
throw new TypeError('Name is required');
}
return { success: true, user: data.name };
} catch (err) {
if (err instanceof TypeError) {
return { success: false, reason: 'validation-failed' };
}
return { success: false, reason: 'unknown-error' };
}
}
console.log(processUserData({}));
β€3
What is the output?
Anonymous Quiz
24%
TypeError: Name is required
50%
{ success: false, reason: 'validation-failed' }
18%
{ success: false, reason: 'unknown-error' }
8%
{ success: true, user: undefined }
π₯4β€2π2π€1
CHALLENGE
const cache = new WeakMap();
function expensiveOperation(obj) {
if (cache.has(obj)) {
console.log('Cache hit!');
return cache.get(obj);
}
console.log('Computing result...');
const result = obj.value * 2;
cache.set(obj, result);
return result;
}
const user = { value: 42 };
expensiveOperation(user);
expensiveOperation(user);
expensiveOperation({ value: 42 });
This has lots of possible use cases, including dealing with weird JSON coming back from LLMs or non-compliant JSON spat out by poorly built software. You can use it from Node, as a CLI tool, or try a basic version online.
Jos de Jong
Please open Telegram to view this post
VIEW IN TELEGRAM
π₯5β€2π1
CHALLENGE
async function fetchData() {
return 'Data loaded';
}
async function processData() {
console.log('Starting...');
try {
const result = fetchData();
console.log(result);
console.log(await result);
return 'Processing complete';
} catch (error) {
return 'Error occurred';
} finally {
console.log('Cleanup');
}
}
processData().then(result => console.log(result));
What is the output?
Anonymous Quiz
35%
Starting... Promise { 'Data loaded' } Data loaded Cleanup Processing complete
30%
Starting... Promise { <pending> } Cleanup Processing complete
19%
Starting... Promise { <pending> } Data loaded Cleanup Processing complete
16%
Starting... Data loaded Cleanup Processing complete
β€1π1π₯1
An open source (though a commercial version is available) Node and Electron-based desktop app for crafting and testing HTTP requests, complex and simple. Think of it as a lightweight alternative to something like Postman.
Anoop M D, Anusree P S and Contributors
Please open Telegram to view this post
VIEW IN TELEGRAM
π2β€1