Assuming any version of Node, how do I find the corresponding Typescript Compiler Option for target
that gives most the functionality? I want to remove the guest work.
Specify ECMAScript target version: "ES3" (default), "ES5", "ES6"/"ES2015", "ES2016", "ES2017" or "ESNext".
I run different versions of node, and I want to know when is the minimum node version to enable the different TSC targets.
Ok so the answer is (As usual) Depends ! It depends on the features that you plan on using. The TypeScript version, target on the tsconfig.json and the NodeJS version. You have to look at this table, and look at your target environment column, in my case it's NodeJs column.
TypeScript's has a target configuration with many values, like esnext, es2015, es6 etc. (very confusing) NodeJs current version (11.11.0) supports many of the new features of JavaScript.
For projects developed in Visual Studio 2019, we encourage you to use the TypeScript npm package for greater portability across different platforms and environments. For ASP.NET Core projects, it is recommended that you use the NuGet package instead. Add TypeScript support using npm The TypeScript npm package adds TypeScript support.
Based on Node-Target Mapping on the TypeScript wiki "es2018" is the right mapping for Node 10, "es2019" is the right mapping for Node 12. It seems that non-LTS versions of Node aren't documented, but given this information I feel like "es2018" is the safest target.
One method to accomplish this is to check out the site http://node.green. Find your version of node, and scroll down until the support for node features stops. So, for example, if you're using 10.3
Then you can see that
ES2016 support is a bit more complex thanks to Array.Prototype.values
which node.green doesn't register as being supported until 10.15.0.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With