31615
A resourceful newsletter featuring the latest and most important news, articles, books and updates in the world of #javascript 🚀 Don't miss our Quizzes! Let's chat: @nairihar
✌️ An SSR Performance Showdown
Fastify’s Matteo Collina set out to find the current state of server-side rendering performance across today’s most popular libraries. The first attempt faced negative feedback due to implementation issues, but the showdown has been improved and re-run.
Matteo Collina
🙅♂️ Prisma 5.19.0, Now with 'Typed SQL'
Prisma is a popular declaratively-driven ORM in the Node.js / TypeScript world and its new version makes it possible to write raw SQL queries in a type-safe way.
Nikolas Burk
😉How to Implement the 2048 Game in JavaScript
Ania is back with one of her usual easy to follow walkthroughs of implementing a complete game in JavaScript. This time it’s the 2048 sliding puzzle game. (Two weeks ago she did Tic-Tac-Toe as well.)
Ania Kubów
😎 yocto-spinner: Tiny Terminal Spinner
Fresh from the one-man module powerhouse that is Sindre Sorhus comes a new project: a tiny, as simple-as-possible terminal spinner/progress control. (‘Yocto’ is a metric prefix that sits below nano, pico, femto, atto, and even zepto..)
Sindre Sorhus
CHALLENGE
Читать полностью…
const obj = {
value: 1,
increment() {
this.value++;
}
};
const increment = obj.increment;
increment();
console.log(obj.value);
CHALLENGE
Читать полностью…
const obj = {
data: [1, 2, 3],
getData() {
return this.data.map(x => x * 2);
}
};
const newData = obj.getData.bind({ data: [4, 5, 6] })();
console.log(newData);
CHALLENGE
Читать полностью…
const obj = {
count: 0,
increment() {
this.count++;
},
getCount() {
return (() => this.count)();
}
};
obj.increment();
obj.increment();
console.log(obj.getCount());
Material UI v6 is out now 🎉
At ten years old, the popular design system has its latest major release. There's a focus on improved theming, color scheme management, container queries, and React 19 support. There are revamped templates to be inspired by, too.
García, Bittu, Andai, et al.
🍊 Rspack 1.0: The Rust-Powered JavaScript Bundler
Far from being ‘yet another bundler’ with its own approach and terminology to learn, Rspack prides itself on being webpack API and ecosystem compatible, while offering many times the performance. The team now considers it production ready and encourages you to try your webpack-based projects on it.
Rspack Contributors
SPONSORED BY Blacksmith 👩🚒
Run GitHub Actions 2x faster at half the cost.
✌️ JavaScript weekly #698
SPONSORED BY Blacksmith 👩🚒
Run GitHub Actions 2x faster at half the cost.
✌️ I am not... I repeat, I am not... a "frontend developer", just because I like to write JS.
I'm also not a "backend developer" b/c I like to write communication-oriented code, to manage and transmit data and juggle asynchony and other non-UI stuff.
I'm a middle-end dev. Forever. I build libraries, tools, etc. My product is what another dev uses to build their product.
Kyle Simpson
CHALLENGE
Читать полностью…
const array = [1, 2, 3];
const obj = { a: 1, b: 2 };
array.push(obj);
obj.a = 3;
console.log(array[3].a);
CHALLENGE
Читать полностью…
function outer() {
var x = 1;
function inner() {
var x = 2;
function deeper() {
console.log(x);
}
return deeper;
}
return inner();
}
const fn = outer();
fn();
CHALLENGE
Читать полностью…
let num = 5;
function change() {
let num = 10;
return function() {
return num;
};
}
const getValue = change();
num = 20;
console.log(getValue());
CHALLENGE
Читать полностью…
const obj = {
num: 10,
getValue() {
return this.num;
},
getUpdatedValue() {
return (() => this.num + 10)();
}
};
console.log(obj.getValue());
console.log(obj.getUpdatedValue());
📌 The JavaScript Summit Armenia 2024 trailer is live!
It was an awesome event, and we’re excited to share some of the best moments with you. Huge thanks to everyone who joined us and helped make it happen.
See you next year at JavaScript Summit Armenia 2025!
Help us improve our newsletter by rating your experience from 1 to 5. Your input is invaluable in helping us deliver the best content possible!
Читать полностью…
CHALLENGE
Читать полностью…
const obj = {
value: 42,
getValue() {
return Math.max(this.value, 50);
}
};
const obj2 = {
value: 25,
getValue: obj.getValue
};
console.log(obj.getValue());
console.log(obj2.getValue());
CHALLENGE
Читать полностью…
const obj = {
a: 1,
b: 2,
getSum() {
return this.a + this.b;
}
};
const cloneObj = { ...obj, getSum() { return this.b + this.a; } };
console.log(obj.getSum());
console.log(cloneObj.getSum());
CHALLENGE
Читать полностью…
function createCounter() {
let count = 0;
return {
increment() {
count++;
return count;
},
getCount() {
return count;
}
};
}
const counter = createCounter();
console.log(counter.increment());
console.log(counter.getCount());
console.log(counter.increment());
console.log(counter.getCount());
❓ CHALLENGE
const numbers = [0,0,0];Читать полностью…
let i = 0;
const result = numbers.reduce((acc, _) => {
return ++acc;
}, i);
console.log(i, result);
SPONSORED BY Blacksmith 👩🚒
Run GitHub Actions 2x faster at half the cost.
CHALLENGE ❓
Читать полностью…
const array = [1, 2, 3, 4];
const result = array.reduceRight((acc, val) => acc - val);
console.log(result);
SPONSORED BY Blacksmith 👩🚒
Run GitHub Actions 2x faster at half the cost.
CHALLENGE ❓
Читать полностью…
const obj = {
a: 1,
b() {
return new Promise(resolve => {
setTimeout(() => {
resolve(this.a);
}, 100);
});
}
};
obj.b().then(console.log);
obj.a = 2;
📎 Sponsorship opportunity!
We are excited to share that our JavaScript newsletter has become quite popular in our community!
With 21k subscribers and around 80 new joiners every day, we see a fantastic engagement with 20-30K reads daily.
If your company is interested in sponsoring and collaborating with our newsletter, we'd love to hear from you!
Feel free to contact me.
🤩 Maska 3.0: Zero-Dependency Input Mask Library
Several demos on the homepage. Lightweight and framework independent but offers Vue 2/3, Alpine.js and Svelte integrations. GitHub repo.
Form․io