Javascript

Browser-targeted ?JavaScript benefits from being minified - i.e. reorganized to use fewest possible characters.

Minified code is functionally identical and still "source" from the point of view of code execution - i.e. it is not compiled into a different language (e.g. from TypeScript or CoffeeScript, or to WebAssembly) nor is it transpiled into a different language dialect (e.g. from ECMAScript 2015 a.k.a. ES6 to 5th edition).

Beware, however, that minified code is not the "preferred source for editing, and therefore not "source" for the purpose of Debian packaging.

uglifyjs

?UglifyJS 3 is the conservative choice: Has fewer reverse dependencies so more likely to be kept up-to-date and less likely to be problematic to backport.

terser

?Terser is the fancier choice: Works directly with more modern dialects of ?JavaScript (UglifyJS 3 covers only ?EcmaScript 5 so newer code needs to be "transpiled e.g. using Babel).

discouraged

Less popular JavaScript minifier tools include these: