4 ms·
Valid JS is often not valid TS. Any nontrivial amount of JS copied into TS will generally not work without tweaks. When people say TS is a superset of JS, it's
by morshu9001 11mo ago
Valid JS is often not valid TS. Any nontrivial amount of JS copied into TS will generally not work without tweaks. When people say TS is a superset of JS, it's just some academic definition of syntax supersets that isn't practically true.
Non-exhaustive examples:
let foo = 2
foo = "foo" // TS disallows type change
let bar = {}
bar.baz = 2 // TS disallows adding property
- anematode 11mo agoEven syntactically, TS is not a superset of JS: https://anemato.de/blog/js-to-ts https://anemato.de/blog/js-to-ts
- morshu9001 11mo agoSo it's a "sodium chloride" thing. Oh I hit this case too, and even this article looks familiar, probably cause I googled an error message
- ddtaylor 11mo agoThe amount of weird TS I see that attempts to keep the JS style of code while getting the compiler to stop being mad is strange. I will see hundreds of line of type inference work, when they could have just made an actual type.
- morshu9001 11mo agoI feel like most people using TS are not doing it by personal choice but because someone else decided it
- Maxion 11mo agoI see this happening with people who are thrown in to coding TS, with little or no training / time to educate themselves.