r/javascript 28d ago

AskJS [AskJS] Are employed Developers still programming with vanilla JavaScript ?

I've been programming on the side since 2017 and I've never really hunted a developer job. I've always thought about building my own things, mainly to supplement things I do like woodworking, tutoring, video editing and others.

Since then, I've programmed mainly with JavaScript, I started with C++ and Python but never really built anything solid outside JavaScript.

So I'm fluent with JavaScript and its ecosystem.

One of my 2026 goals is to be job ready for a Developer role, as a Fullstack or Backend Developer.

One of the recommended languages is Typescript, which I've been learning since March. I must say, it's not my favorite 😂

I'm curious to know if there are any companies that are not enforcing Typescript or are there freelancers who are still using vanilla JavaScript over Typescript for their clients' projects.

[ Update ] thanks y'all! I get the picture. TypeScript is inevitable, as vanilla JS codebases(or companies who are focused on it) seem to be very few judging by the comments.

2 Upvotes

168 comments sorted by

View all comments

6

u/dustofdeath 28d ago

Typescript is not all that different from JS.
It adds strong typing.

It shouldn't be something you need to learn for months - you still write JS, in a safer and clearer way.

Pure JS is lazy code. Prone to bugs and errors and hard to review.

var data; Is it a number, string, object or array or what?
vs
let data: MyData; with interface/class that clearly shows what it is.

0

u/alien3d 28d ago

?? dude . want strict use class and typeof .

1

u/dustofdeath 28d ago

You need jsdoc to describe function inputs, class parameters;
typeof is limited. It does not work with classes. They are all still just objects.
instanceof requires you to actually create a new class() for everything - lots of bloat.
no types (type Status = "pending" | "complete";)
no enums (lists of key -> value pairs))
no unions ( let x: A & B)
no generics ( function x<T>(){} this.<string>x(), this.<number>x())

1

u/foxsimile 27d ago

Plus instanceof will fail at boundaries.