function Animal() {}
function Dog() {}
Dog.prototype = Object.create(Animal.prototype);
const rover = new Dog();
console.log(rover.constructor === Animal);
Please open Telegram to view this post
VIEW IN TELEGRAM
β€6
β€10π5π€©2π€1
In an ideal world, the latest version of Node would slot well into every project, but in reality we often need to switch versions, and a variety of tools are available to make it simple. NVM is perhaps the best known, but maybe N, FNM, Volta, or even pnpm could suit you better?
PAVEL ROMANOV
Please open Telegram to view this post
VIEW IN TELEGRAM
β€7π3π€©2 2
function Person(name) {
this.name = name;
}
Person.prototype.sayName = function() {
console.log('My name is ' + this.name);
};
const john = new Person('John');
console.log(john.sayName === Person.prototype.sayName);
Please open Telegram to view this post
VIEW IN TELEGRAM
β€7π1
β€15π€7π4 4
Varik Matevosyan
Software Engineer (Lantern, YC W24)
Please open Telegram to view this post
VIEW IN TELEGRAM
function Shape() {}
function Circle(radius) {}
Circle.prototype = Object.create(Shape.prototype);
const shape = new Shape();
console.log(shape instanceof Circle);
Please open Telegram to view this post
VIEW IN TELEGRAM
π4β€3
π€15π€£6 6β€2π2
const promise = new Promise((resolve, reject) => {
setTimeout(() => reject(new Error('Error')), 1000);
});
promise
.then(result => console.log(result))
.then(result => console.log(result))
.catch(error => console.error(error.message))
.finally(() => console.log('Finally'));
Please open Telegram to view this post
VIEW IN TELEGRAM
π2
What is the output?
Anonymous Quiz
41%
Error: Error, Finally
13%
Error: Error
31%
Error: Error, undefined, Finally
15%
Finally
π€36π10
I bet many of you are fans of xkcd! For this yearβs April Foolsβ joke, they published βMachineβ, a giant Rube Goldberg machine of sorts (explained here). With a lot of TypeScript up front and Haskell in the back, hereβs how it works at a technical level. (GitHub repo.)
MAX GOODHART
Please open Telegram to view this post
VIEW IN TELEGRAM
β€4π1π€1π€£1
const promise = new Promise((resolve, reject) => {
setTimeout(() => resolve(3), 1000);
});
promise
.then(result => {
console.log(result);
return result * 2;
})
.then(result => {
console.log(result);
return new Promise(resolve => setTimeout(() => resolve(result * 3), 1000));
})
.then(result => {
console.log(result);
});
Please open Telegram to view this post
VIEW IN TELEGRAM
π17π€£6π€©4β€2
π13β€3π€1
A fantastic demonstration of using browser APIs to create more elegant drag and drop experiences that even work across different browser windows or IFRAMEs, with Atlassianβs Pragmatic Drag and Drop library doing the heavy lifting.
ALEX REARDON
Please open Telegram to view this post
VIEW IN TELEGRAM
π11β€3π€©1
const promise = new Promise((resolve, reject) => {
setTimeout(() => reject(new Error('Rejected')), 1000);
});
promise
.then(result => console.log(result))
.catch(error => console.error(error.message))
.then(() => console.log('After catch'))
.then(() => console.log('After then'))
.catch(error => console.error(error.message));
Please open Telegram to view this post
VIEW IN TELEGRAM
π4π€1
What is the output?
Anonymous Quiz
17%
Rejected, After catch
39%
Rejected, After catch, After then
25%
Error: Rejected, After catch, After then
19%
Error: Rejected
π10β€4π€£2 2π€©1
A similar idea to Mermaid but with a different attitude to extensibility as well as no requirement for a headless browser server-side. The intro docs have both visual and code examples.
HIKERPIG
Please open Telegram to view this post
VIEW IN TELEGRAM
What is your salary as an engineer? π΅
Anonymous Poll
36%
0
12%
< 500$
8%
< 1.000$
8%
< 2.000$
9%
< 4.000$
6%
< 8.000$
4%
< 10.000$
2%
< 12.000$
3%
< 15.000$
12%
< 20.000$
π€£51π€15π€©7 7β€5π5
CHALLENGE
function Product(name, price) {
this.name = name;
this.price = price;
}
Product.prototype.discount = function(discount) {
this.price -= discount;
};
const product = new Product('Phone', 500);
product.discount(50);
console.log(product.price);
π8β€2π₯1