What is the output?
Anonymous Quiz
34%
Sarah, undefined, undefined, undefined
24%
Sarah, undefined, Sarah, Sarah
34%
Sarah, Sarah, undefined, undefined
7%
undefined, undefined, undefined, undefined
β€8π€3
Speed up solving programming tasks in any language β Python, JavaScript, Java, and more. Powered by ChatGPT Plus, but 3Γ cheaper! Donβt overpay $20 for ChatGPT Plus β pay just $7.25 and get faster, more accurate answers. Try DevHelperAI now! π
First month FREE !
@devhelperai_bot
Please open Telegram to view this post
VIEW IN TELEGRAM
β€10π4π₯1
CHALLENGE
const target = { name: 'Maya', age: 25 };
const handler = {
get(obj, prop) {
if (prop in obj) {
return obj[prop];
}
return `Property '${prop}' not found`;
},
set(obj, prop, value) {
if (typeof value === 'string') {
obj[prop] = value.toUpperCase();
} else {
obj[prop] = value;
}
return true;
}
};
const proxy = new Proxy(target, handler);
proxy.city = 'tokyo';
console.log(proxy.name);
console.log(proxy.city);
console.log(proxy.country);
β€4
What is the output?
Anonymous Quiz
20%
Maya TOKYO undefined
43%
MAYA TOKYO Property 'country' not found
17%
Maya tokyo undefined
20%
Maya TOKYO Property 'country' not found
β€7π₯1
One of TypeScript's gentlest steps forward, with support for
import defer, --module node20
, and βexpandable hoversβ (below) to see expanded type information in IDEs. We also learn v6.0 will act as a βtransition pointβ to get prepared for the Go-powered βnative portβ of TypeScript due to arrive as TypeScript 7.0.Microsoft
Please open Telegram to view this post
VIEW IN TELEGRAM
β€6π1π₯1
CHALLENGE
const numbers = [1, 2, 3, 4, 5];
const result = numbers
.map(x => x * 2)
.filter(x => x > 5)
.reduce((acc, x) => {
acc.push(x.toString());
return acc;
}, [])
.map(x => x + '!')
.join(' | ');
console.log(result);
console.log(typeof result);
4π5β€4
What is the output?
Anonymous Quiz
37%
6! | 8! | 10! string
26%
12 | 16 | 20 string
28%
["6!", "8!", "10!"] object
9%
6! | 8! | 10! object
β€9π2π₯1
12 years on from its first release, ECharts takes another big step forward. Visualization types span from line, bar and pie charts to 3D graphs, calendars and Sankey diagrams. v6 brings an all-new design language, dynamic theme switching, dark mode support, even more chart types, and more. Be sure to enjoy the 100+ demos and the GitHub repo.
Apache Software Foundation
Please open Telegram to view this post
VIEW IN TELEGRAM
β€6π1π₯1
CHALLENGE
const data = {
name: '',
age: 0,
city: null,
country: undefined,
isActive: false
};
const getName = () => data.name || 'Unknown';
const getAge = () => data.age ?? 25;
const getCity = () => data.city || 'Default City';
const getCountry = () => data.country ?? 'Default Country';
const getStatus = () => data.isActive || 'inactive';
console.log(`${getName()}-${getAge()}-${getCity()}-${getCountry()}-${getStatus()}`);
β€3
What is the output?
Anonymous Quiz
34%
Unknown-25-Default City-Default Country-inactive
46%
Unknown-0-Default City-Default Country-inactive
13%
-0--Default Country-false
7%
-25-Default City-Default Country-inactive
β€7π1π₯1
CHALLENGE
const sym1 = Symbol('test');
const sym2 = Symbol('test');
const obj = {
[sym1]: 'first',
[sym2]: 'second',
regular: 'third'
};
const keys = Object.keys(obj);
const symbols = Object.getOwnPropertySymbols(obj);
const allProps = Reflect.ownKeys(obj);
console.log(keys.length);
console.log(symbols.length);
console.log(allProps.length);
console.log(sym1 === sym2);
π₯3β€2
β€4π2π₯1
Interesting idea π€
I always thought that front-end development is much harder then backend, but I was having trouble to explain that idea to developers. Today I wanted to check the opinion of the LLM, so called the general expert's opinion.
Agreed that front-end is harder for humans, because backend scales mathematically, rule based, and it's not that hard to understand. It's just math...
Then I asked, to find a similar analogy for front-end. It nailed. BIOLOGY!
____
Backend scaling: like mathematics: you add more nodes, shard databases, optimize queries - the system grows by formulas and predictable rules.
Frontend change: like biology: small mutations (new device, new browser feature, new UX demand) create emergent, often chaotic behavior that must be adapted to case by case.
____
Biology is more difficult then mathematics β mathematics is rule-bound and deterministic, while biology is emergent, full of exceptions, context-dependent, and constantly changing.
Thatβs why front-end (biology-like) feels messier and harder for humans, even if backend (math-like) can be more abstractly deep.
Edgar Marukyan
I always thought that front-end development is much harder then backend, but I was having trouble to explain that idea to developers. Today I wanted to check the opinion of the LLM, so called the general expert's opinion.
Agreed that front-end is harder for humans, because backend scales mathematically, rule based, and it's not that hard to understand. It's just math...
Then I asked, to find a similar analogy for front-end. It nailed. BIOLOGY!
____
Backend scaling: like mathematics: you add more nodes, shard databases, optimize queries - the system grows by formulas and predictable rules.
Frontend change: like biology: small mutations (new device, new browser feature, new UX demand) create emergent, often chaotic behavior that must be adapted to case by case.
____
Biology is more difficult then mathematics β mathematics is rule-bound and deterministic, while biology is emergent, full of exceptions, context-dependent, and constantly changing.
Thatβs why front-end (biology-like) feels messier and harder for humans, even if backend (math-like) can be more abstractly deep.
Edgar Marukyan
π€11π8β€2
CHALLENGE
const values = [null, undefined, '', 0, false, NaN];
const results = [];
for (let val of values) {
results.push({
value: val,
boolean: !!val,
string: String(val),
number: Number(val)
});
}
console.log(results[2].boolean);
console.log(results[3].string);
console.log(results[1].number);
β€4π2
What is the output?
Anonymous Quiz
22%
false 0 undefined
44%
false 0 NaN
17%
true 0 NaN
17%
false '0' undefined
β€3π2π₯1
Please open Telegram to view this post
VIEW IN TELEGRAM
π€£21π₯3β€2π€©2
CHALLENGE
class StateMachine {
constructor() {
this.state = 'idle';
this.transitions = {
idle: { start: 'running' },
running: { pause: 'paused', stop: 'stopped' },
paused: { resume: 'running', stop: 'stopped' },
stopped: { reset: 'idle' }
};
}
transition(action) {
const next = this.transitions[this.state]?.[action];
if (next) this.state = next;
return this.state;
}
}
const sm = new StateMachine();
console.log(sm.transition('start'));
console.log(sm.transition('invalid'));
console.log(sm.transition('pause'));
console.log(sm.transition('resume'));
console.log(sm.transition('stop'));
console.log(sm.transition('reset'));
β€6π1
What is the output?
Anonymous Quiz
23%
start invalid pause resume stop reset
36%
running running running running stopped stopped
18%
running idle paused running stopped idle
24%
running running paused running stopped idle
β€2π2π₯2
Prototype pollution π₯
Exposing the default prototype by calling unsafe recursive functions with untrusted data as input
Read ~20mins estimated
learn.snyk.io
Exposing the default prototype by calling unsafe recursive functions with untrusted data as input
Read ~20mins estimated
learn.snyk.io
Please open Telegram to view this post
VIEW IN TELEGRAM
β€7π3π₯2
CHALLENGE
console.log('1');
setTimeout(() => console.log('2'), 0);
Promise.resolve().then(() => console.log('3'));
setTimeout(() => console.log('4'), 0);
Promise.resolve().then(() => {
console.log('5');
return Promise.resolve();
}).then(() => console.log('6'));
console.log('7');