TIL about the greek question mark
Tell me, can you tell the difference between these two characters?
;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž
TIL about the greek question mark
Tell me, can you tell the difference between these two characters?
;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž;Íž
It is recommended. But in TS it is not necessary with rare exceptions.
Thatâs whatâs really irks me be about JSâyou can do just about whatever but youâre not supposed to.
Itâs an imperative language, but best practices are to use it functionally.
You can omit semicolons, but best practices are to use them.
You can use sloppy equality, but best practices are to always use strict.
JavaScript reminds me of an older brother who happens to be the most laid back stoner you could meet. âLike yea man, you should probably use semicolons, but I ainât gonna narcâ
After switching to typescript with linting and prettier I simply hate writing vanilla JavaScript anymore. Some people complain about the extra project setup needed but I find that time pays for itself immediately.
Extra project setup like
pnpm add -D typescript && tsc --init
? One thing that is kinda annoying is that you have to manage were will js files go.And eslint and setting up tsconfig for your project structure.
You donât need eslint with TS.
Why do the typescript extensions to eslint exist then?
I donât know. I never used eslint, therefore it is not needed. Everything works perfectly fine without it.
Why do you need it?
Same reason you use typescript. It helps you catch bugs and follow programming best practices. You also donât need typescript, but with it your code is better. Typescript is technically just a really fancy linter. The actual compilation mainly just removes the type data and does some JavaScript engine compatibility.
You need to remember that a lot of those best practices are to cover for the performance issues from misusing loosely typed variables.
The JavaScript engine can compile clean, type-safe code down to be almost as fast as properly compiled code. When you use various features like the loose equals or various object mutations and the like, the engine cannot optimize it, leaving your code much, much slower.
Iâll add that to my mountain of reasons for using typescript
Yup! I love TypeScript, and I love the flexibility of JavaScript. With all of the type templates and generics and other black magic TypeScript has, itâs pretty easy to even support the crazy stuff like mixins and contextual parameters (if Iâm not speaking too loosely while avoiding proper terms!).
A lot of the crazy stuff wonât optimize, but at least it goes to show how itâs not really tying JavaScriptâs hands even when requiring TS everywhere.
thanks to eslint enforcing it in the default rules itâs necessary for most typescript projects
Except that you should use Prettier for formatting instead of ESLint. That said, semicolons are useless noise
Why should you use that?
It adds even more auto formatting rules so you can basically stop thinking about formatting entirely. I used to be opinionated about formatting but now I just go with whatever prettier does. Itâs not always the best but itâs consistent and itâs a big chunk of my brain I can free up for things that matter. It also formats things safely so you donât run into those weird edge cases where semicolons matter if you choose to turn them off.
Arenât some of the scenarios for needing a semicolon logical-domain problems and not syntax issues? I wouldnât trust autoformatting to spot a logical problem, though I also hope no one is writing code that flippantly. (as if honest mistakes arenât common enough!)
Maybe thereâs some edge case but in my years of using prettier I havenât encountered one once.
Never used eslint. prettier is a must. semicolons are only needed to split some rare TS syntax lines.
I wouldnât do it without an auto formatter. With prettier it will catch potential no semi colon issues.
You absolutely have to use prettier with JS. I donât think there is auto adding missing semicolons in C/C++ though, it would be very useful.
I tried prettier and I thought it was literally making my code uglier. Itâs eslint --fix for me.
Yes, true. I also did setup so that any missing semicolon will be added, because I got sick of not inserting them sometimes and then some code was without them and some was. (Before I tested just leaving them all out, out of fun, so I got into the habit of just leaving them out regularly)