Obfuscation is to show JS language local syntax right into a human unreadable code (or very difficult to recognize). This work is completed through Javascript Obfuscators that minify/compress the unique code. This is a way to guard the code so that it's far more difficult for the opposite engineer. It is also a recreation to jot down source code with unreadable and unnatural syntax.
The techniques use ASCII codes (to replace characters with letters), converting names of variables through quick non-defined names, overcoming consisting of base64, and so on.
The deobfuscation JS is the opposite of obfuscation. The intention is to rewrite / decode / deobfuscate / decrypt / uncompress the javascript obfuscated code to retrieve local JS. Equipment is called unobfuscator or deobfuscator.