Documentation
/
Obfuscation de base
/

Commentaires conditionnels

Commentaires conditionnels

Vous pouvez désactiver l'obfuscation de manière sélective pour certaines parties de votre code à l'aide de commentaires spéciaux.

JavaScript

Pratique lorsque vous devez garder lisibles dans la sortie certains blocs de configuration ou des chaînes de version, sans renoncer à l'obfuscation pour le reste du fichier.

L'obfuscateur lit ces commentaires dans son entrée : conservez-les donc à travers toute étape de build exécutée avant l'obfuscation ; un minifieur qui supprime d'abord les commentaires les fait disparaître.

Ce que « disable » ignore réellement

Une région désactivée n'ignore que les transformations directes des nœuds qu'elle contient, c'est-à-dire l'obfuscation d'une déclaration à l'endroit où elle est déclarée. Les transformations enfants s'appliquent toujours : une référence, dans un bloc désactivé, à un identifiant renommé à sa déclaration ailleurs est donc tout de même renommée :

JavaScript

Si un nom doit rester lisible partout où il apparaît, désactiver un seul bloc ne suffit pas ; gardez aussi sa déclaration hors de toute région obfusquée, ou utilisez reservedNames.

Avec vmObfuscation, disable ne fonctionne que sur des fonctions entières. Une fonction située dans une région désactivée n'est pas virtualisée. Une région désactivée imbriquée dans une fonction virtualisée est quand même compilée en bytecode avec le reste du corps de cette fonction : la forme lisible ne survit pas. Seul le code désactivé au niveau racine (en dehors de toute fonction virtualisée) reste en clair dans la sortie.