What is the output?
Anonymous Quiz
26%
Marcus full-access 126 3
36%
Marcus full-access 42 3
23%
undefined full-access 126 4
15%
Marcus full-access 126 4
โค2๐ค1
One personโs entertaining and heroic tale of wielding JavaScript to explore the Firefox extension ecosystem. And what oddities there are within! I enjoyed this a lot, itโs like Alice in Wonderland for developers. More spelunking like this please.
Jack Cab
Please open Telegram to view this post
VIEW IN TELEGRAM
โค4๐ฅ4๐3๐คฃ2๐ค1๐คฉ1
CHALLENGE
const values = [0.1 + 0.2, NaN, Infinity, -0, 42.6789];
const results = values.map((v, i) => {
if (i === 0) return Number.isInteger(v) + " " + v.toFixed(1);
if (i === 1) return Number.isFinite(v) + " " + Number.isNaN(v);
if (i === 2) return Number.isFinite(v) + " " + isFinite(v);
if (i === 3) return Object.is(v, -0) + " " + (v === 0);
if (i === 4) return v.toPrecision(4) + " " + Math.trunc(v);
});
results.forEach(r => console.log(r));
โค1๐1๐ฅ1
Snapshots your real UI and captures a flat list of skeleton โbonesโ which are positioned, sized rectangles that mirror the page exactly. Supports React, Preact, React Native, Vue, Svelte, and Angular.
0xGF
Please open Telegram to view this post
VIEW IN TELEGRAM
โค4๐4๐ค1
CHALLENGE
class Animal {
#sound;
constructor(name, sound) {
this.name = name;
this.#sound = sound;
}
speak() {
return `${this.name} says ${this.#sound}`;
}
static create(name, sound) {
return new this(name, sound);
}
}
class Dog extends Animal {
#tricks = [];
constructor(name) {
super(name, "woof");
}
learn(trick) {
this.#tricks.push(trick);
return this;
}
perform() {
return `${this.name} performs: ${this.#tricks.join(", ")}`;
}
}
const rex = Dog.create("Rex", "bark");
rex.learn("sit").learn("shake").learn("roll over");
console.log(rex.speak());
console.log(rex.perform());
console.log(rex instanceof Animal);
console.log(rex instanceof Dog);What is the output?
Anonymous Quiz
32%
Rex says woof Rex performs: sit, shake, roll over true true
40%
Rex says woof Rex performs: sit - shake - roll over true true
16%
Rex says bark Rex performs: sit, shake, roll over false true
11%
Rex says bark Rex performs: sit, shake, roll over true true
โค4๐2
A full Windows 95 experience as an app on macOS, Linux, and Windows, built upon the v86 JavaScript + WASM emulator. v5.0 is a big release as you can mount a folder from your machine into it as a Z: drive, mount ISOs as CD-ROMs, thereโs a shared clipboard, and Internet access has been improved. Iโm so trying to get Microsoft Encartaโs Mindmaze running on thisโฆ
Felix Rieseberg
Please open Telegram to view this post
VIEW IN TELEGRAM
โค8๐ฅ4
CHALLENGE
const user = {
profile: {
name: "Marcus",
score: 0,
nickname: null,
bio: undefined,
},
};
user.profile.nickname ??= "Anonymous";
user.profile.bio ??= "No bio provided";
user.profile.score ??= 100;
user.profile.rank ??= "Beginner";
const { name, score, nickname, bio, rank } = user.profile;
console.log(`${name} | ${score} | ${nickname} | ${bio} | ${rank}`);โค3๐ฅ2
An open-source framework for creating and rendering videos with HTML and JavaScript. Essentially a simpler non-React alternative to Remotion. It includes a variety of built-in blocks/components for common video effects and elements, and can also composite existing video and audio clips. GitHub repo.
HeyGen
Please open Telegram to view this post
VIEW IN TELEGRAM
โค6๐ฅ2
CHALLENGE
const counter = (function () {
let count = 0;
const history = [];
return {
increment(step = 1) {
count += step;
history.push(count);
return this;
},
decrement(step = 1) {
count -= step;
history.push(count);
return this;
},
getHistory: () => history,
getCount: () => count,
};
})();
counter.increment(5).increment(3).decrement(2);
console.log(counter.getCount(), counter.getHistory().join(" -> "));โค4๐1
What is the output?
Anonymous Quiz
23%
8 5 -> 8 -> 6
46%
6 5 -> 8 -> 6
17%
5 5 -> 8
15%
6 -> 5 -> 8 -> 6
โค5๐2
A month ago, Evan You (of Vue.js and VoidZero fame) gave his annual address. Less Vue-focused than usual (though Vapor Mode is โalmost readyโ), the talk focuses on Vite-ecosystem updates covering Vite 8, Vite+, and Void.
Evan You / Vue.js Amsterdam
Please open Telegram to view this post
VIEW IN TELEGRAM
โค5๐3๐ฅ2
CHALLENGE
const partial = (fn, ...presetArgs) => {
return function partiallyApplied(...laterArgs) {
return fn(...presetArgs, ...laterArgs);
};
};
const calculateTax = (taxRate, discount, price) => {
const discounted = price - (price * discount) / 100;
return parseFloat((discounted + (discounted * taxRate) / 100).toFixed(2));
};
const withVAT = partial(calculateTax, 20);
const withVATandDiscount = partial(withVAT, 15);
console.log(withVAT(0, 100));
console.log(withVATandDiscount(200));
console.log(partial(calculateTax, 10, 5)(50));
๐2๐ฅ1
What is the output?
Anonymous Quiz
33%
120 204 52.25
42%
120 170 47.5
21%
100 204 52.25
4%
120 204 47.5
โค3
The Bun runtime has had a great run of releases, including last weekโs v1.3.12 with built-in browser automation. Now, bun test gets numerous enhancements with --isolate, --parallel, --shard and --changed options for test env isolation, parallelization, and to run only test files affected by recent changes. The runtime now uses 5% less memory, bun install gets faster, and more.
Jarred Sumner
Please open Telegram to view this post
VIEW IN TELEGRAM
๐ฅ3โค2๐2
CHALLENGE
const values = [0.1 + 0.2, NaN, Infinity, -0, 42.6789];
const results = values.map((v, i) => {
if (i === 0) return v.toFixed(2);
if (i === 1) return Number.isFinite(v) + " " + Number.isNaN(v);
if (i === 2) return Number.isFinite(v) + " " + isFinite(v);
if (i === 3) return Object.is(v, 0) + " " + Object.is(v, -0);
if (i === 4) return v.toPrecision(4);
});
console.log(results.join(" | "));
โค3๐2๐ฅ2
โข git history offers a new, easy way to edit commit messages or interactively split a commit into two.
โข You can now define hooks in config files (whether in a repo, at user level, or even system level) rather than just in
.git/hooks. You can also run multiple hooks for the same event in this way.Please open Telegram to view this post
VIEW IN TELEGRAM
โค5๐ฅ3