Documentation

JavaScript Obfuscator docs

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

Inside The Docs

Practical guides, not placeholder pages.

How-to guides Start with command-line usage, then move into feature-specific references.
Advanced protection Browse cross-file obfuscation topics like Replace Globals and Protect Members.

Protect Members

  • ProtectMembers
  • Corporate

Protect Members renames object member names across the files in a project. It is the cross-file counterpart to simpler member-hiding options such as Move Members.

What it protects

This feature targets member names such as value in myobj.value or Start in helper.Start(). Unlike Move Members, which only hides access syntax, Protect Members actually changes the member names themselves.

Because member names often form part of a public API, this mode is stricter than Replace Globals. You should explicitly decide which members are safe to rename.

Recommended workflow

  • Mark private members with a naming rule, such as a double-underscore prefix.
  • Configure Rename by rules or Custom Identities so only those private members are eligible.
  • Keep every related file in the same JavaScript Obfuscator project so the renamed members stay consistent everywhere.
Protect Members dialog

Example across files

Using a rule such as ^__, the member names that start with a double underscore can be renamed everywhere they appear in the project.

a.js
b.js
=>
a.js
b.js
Best practice: only rename members that are truly private to your own code. If third-party scripts, templates, or external callers depend on a member name, leave it out of the protection rules.