Documentation

Guides for protecting production JavaScript

Reference guides for release workflows, command-line usage, cross-file protections, and the desktop app.

Inside The Docs

Practical guides, not placeholder pages.

How-to guides Start with release sequencing and command-line usage, then move into feature-specific references.
Advanced protection Browse cross-file controls like Replace Globals and Protect Members when a build spans multiple scripts.

Name Mangling

  • ReplaceNames
  • Free

Name Mangling is the base obfuscation option. It replaces local identifiers such as variables, arguments, and local functions with shorter generated names.

What it covers

By default, this option focuses on local identifiers. It is designed to make the transformed code much harder to read without changing the public surface of the file. If you also need to rename globals or shared members, move into the cross-file features such as Replace Globals and Protect Members.

Output styles

JavaScript Obfuscator supports multiple generated naming styles. Two examples from the original documentation are shown below.

Compact hexadecimal-style names:

if (_0x1EBFF[_$_51d7[103]](_0x1D60F, _$_51d7[160])) {
    var _0x1D6E7 = _0x1D60F[_$_51d7[222]][_$_51d7[169]];
}

Short alphabetic-style names:

if (ed[_$_3485[103]](b, _$_3485[160])) {
    var k = b[_$_3485[222]][_$_3485[169]];
}
Start here: if you are new to the product, Name Mangling is usually the first option to enable before layering on deeper structural transformations.