Node.js is an absolutely horrible and uninspired name for where some folks took the V8 javascript engine -- which is what runs JavaScript in Chrome and Chrome-likes -- and made it a standalone without the browser that you can run server-side.
It basically turns JavaScript into a server-side language, instead of its traditional role as a client-side one.
Given what a ****-show Javascript is, how even bigger garbage seems to be getting layered atop it, and how from a performance and usability standpoint there are far better languages, I'm a bit shocked it's as popular as it is.
BUT -- I can understand the appeal of being able to use the same language server-side as you do client-side.
Problem is there are a LOT of things you can do server-side that has zero damned business in the browser, and vice-versa.
You might have heard of node-webkit, nw-js (which is same thing but using node.js instead of webkit), or electron? They are basically browser engines running atop node.js -- for all intents and purposes a browser turned inside-out -- that allow you to make full stack applications in JavaScript with HTML/CSS as your UI.
Visual Studio Code -- the editor -- is an Electron application, as is the Atom editor for which Electron was created.
Such programs are horrifyingly bloated and inefficient... I can't even use Atom or VSC because I can outrun the keyboard buffer. BUT, they do have the advantage of being fully cross platform off of one codebase. If you can port electron to a platform, you can run your program unmodified on it.