What is the output?
Anonymous Quiz
24%
function function 30 false
27%
object function 30 true
34%
function function 30 true
16%
function number 30 true
ð¥2â€1
CHALLENGE
const obj = {
name: "Quantum",
regular: function () {
return this.name;
},
arrow: () => {
return this?.name;
},
nested: function () {
const inner = () => this.name;
return inner();
},
};
console.log(obj.regular());
console.log(obj.arrow());
console.log(obj.nested());â€4ð4ð¥4
What is the output?
Anonymous Quiz
18%
undefined undefined Quantum
28%
Quantum Quantum Quantum
26%
Quantum undefined undefined
28%
Quantum undefined Quantum
ð¥2ð€£2
CHALLENGE
const flags = {
READ: 0b0001,
WRITE: 0b0010,
EXECUTE: 0b0100,
DELETE: 0b1000,
};
const userPermissions = flags.READ | flags.WRITE | flags.EXECUTE;
const adminPermissions = userPermissions | flags.DELETE;
const canDelete = (adminPermissions & flags.DELETE) !== 0;
const readOnly = userPermissions & ~flags.WRITE;
const toggled = userPermissions ^ flags.EXECUTE;
const shifted = (flags.DELETE << 2) | (flags.READ >> 0);
console.log(canDelete, readOnly, toggled, shifted);â€3ð2ð¥1
ð€3â€1
CHALLENGE
function createUser(
name,
role = "viewer",
permissions = { read: true, write: false },
level = permissions.write ? 2 : 1
) {
return { name, role, permissions, level };
}
const user1 = createUser("Carlos");
const user2 = createUser("Diana", "editor", { read: true, write: true });
const user3 = createUser("Eve", "admin", undefined, 5);
console.log(user1.role, user1.level);
console.log(user2.role, user2.level);
console.log(user3.role, user3.level);
ð¥5ð2ð€©2
What is the output?
Anonymous Quiz
18%
viewer 2 editor 2 admin 5
33%
viewer 1 editor 1 admin 5
37%
viewer 1 editor 2 admin 5
13%
viewer 1 editor 2 admin 2
â€3ð1
CHALLENGE
const user = {
profile: {
name: "Marcus",
address: {
city: "Berlin",
zip: "10115"
}
},
getSubscription: () => ({
plan: "pro",
features: ["analytics", "exports"]
})
};
const city = user?.profile?.address?.city;
const country = user?.profile?.address?.country?.toUpperCase();
const firstFeature = user?.getSubscription?.()?.features?.[0];
const adminRole = user?.roles?.[0]?.name ?? "guest";
console.log(city, country, firstFeature, adminRole);ð¥4ð3â€2ð€©2
What is the output?
Anonymous Quiz
19%
undefined undefined undefined guest
29%
Berlin null analytics null
43%
Berlin undefined analytics guest
10%
Berlin undefined undefined guest
ð¥1
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
ð€£9ð¥7ð1ð€1
CHALLENGE
const tag = (strings, ...values) => {
return strings.reduce((result, str, i) => {
const value = values[i - 1];
const transformed =
typeof value === "number" ? value * 2 : value?.toUpperCase();
return result + transformed + str;
});
};
const name = "carlos";
const score = 42;
const bonus = null;
const output = tag`Player: ${name}, Score: ${score}, Bonus: ${bonus}`;
console.log(output);â€2ð¥1
What is the output?
Anonymous Quiz
18%
Player: Carlos, Score: 84, Bonus: 0
29%
Player: carlos, Score: 42, Bonus: null
37%
Player: CARLOS, Score: 84, Bonus: undefined
15%
Player: CARLOS, Score: 84, Bonus: null
â€4ð¥4ð3
CHALLENGE
const p1 = new Promise((resolve) => {
console.log("A");
resolve("B");
});
const p2 = p1.then((val) => {
console.log(val);
return "C";
});
p2.then((val) => {
console.log(val);
});
console.log("D");
â€5ð¥5ð2
â€3ð¥1
CHALLENGE
function highlight(strings, ...values) {
return strings.reduce((result, str, i) => {
const value = values[i - 1];
const transformed =
typeof value === "number"
? `[${value * 2}]`
: `(${String(value).toUpperCase()})`;
return result + transformed + str;
});
}
const product = "widget";
const qty = 4;
const price = 12.5;
const output = highlight`Order: ${product} x${qty} @ $${price}`;
console.log(output);â€6ð3ð€£1
What is the output?
Anonymous Quiz
28%
Order: (WIDGET) x[4] @ $[25]
43%
Order: (WIDGET) x[8] @ $[25]
16%
Order: (widget) x[8] @ $[25]
13%
Order: (WIDGET) x[8] @ $[12.5]
â€3ð¥3
CHALLENGE
function* pipeline(...fns) {
let value = yield;
for (const fn of fns) {
value = yield fn(value);
}
return value;
}
const double = x => x * 2;
const addTen = x => x + 10;
const square = x => x * x;
const gen = pipeline(double, addTen, square);
gen.next(); // prime the generator
const r1 = gen.next(3);
const r2 = gen.next(r1.value);
const r3 = gen.next(r2.value);
console.log(r1.value, r2.value, r3.value);â€6ð2ð¥1
ð¥3
An experienced developer built and benchmarked the same app across numerous frameworks (e.g. Angular, Solid, React, Alpine.jsâŠ). Here are the results, covering bundle size, build time, UX metrics, and more.
Alicia Sykes
Please open Telegram to view this post
VIEW IN TELEGRAM
â€4ð¥3