Is Node.js a JavaScript runtime environment or an EcmaScript environment?

According to https://nodejs.org/en/

Node.js® is a JavaScript runtime built on Chrome’s V8 JavaScript engine.

However, according to this answer, JavaScript is:

JavaScript = ECMAScript + DOM API;

and there is no DOM in Node.js runtime. (or is there?) Also quoting from the book: Professional JavaScript for Web Developers:

Though JavaScript and ECMAScript are often used synonymously,
JavaScript is much more than just what is defined in ECMA-262. Indeed,
a complete JavaScript implementation is made up of the following three
distinct parts:

  • The Core (ECMAScript)
  • The Document Object Model (DOM)
  • The Browser Object Model (BOM)

which supports the answer I link to.

Considering the facts above, isn ‘t it correct to say Node.js is a ECMAScript runtime? If not, what do we need to remove (or add?) if we wanted to fork Node.js and make it an ECMAScript runtime instead of a JavaScript runtime?

Here is Solutions:

We have many solutions to this problem, But we recommend you to use the first solution because it is tested & true solution that will 100% work for you.

Solution 1

The difference between JavaScript and ECMAScript is just a pedantic difference that most people don’t really care about. Technically the official language name according to the standard is ECMAScript, but for historical and convenience reasons people almost always call it “JavaScript”. I’ve never met anybody who calls themselves an “ECMAScript developer”.

As far as I know, JavaScript doesn’t even have an official formal definition. While ECMAScript has a prescriptive definition with versions that are formally defined by their various specifications, the meaning of “JavaScript” is essentially defined by how people use it.

For this reason, Node.js advertises itself as a JavaScript runtime. It might be more “technically correct” to call it an ECMAScript runtime, but it would be more confusing for most people to advertise it that way.

Solution 2

There are many JavaScript run time environment:

  1. Browsers
  2. Node.js
  3. Deno
  4. Edge Workers
  5. Moddable
  6. Databses
  7. Productivity Software

source: https://www.youtube.com/watch?v=JN7UjvceOlw

Note: Use and implement solution 1 because this method fully tested our system.
Thank you 🙂

All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

Leave a Reply