Firefox 拡張機能で使用される JavaScript を書き換える必要がある場合は、同じ JavaScript エンジンを使用することをお勧めします。JSHydraという JavaScript 書き換えエンジンがあります。当初は SpiderMonkey をコンパイルする必要がありましたが、 Parser APIのおかげで不要になりました。プリコンパイルされたJavaScript シェル ナイリー(jsshell-OS-ARCH
アーカイブ)の 1 つを取得し、それを介して単純なスクリプトを実行できます (スクリプトは元の JSHydra バイナリとまったく同じことを行います)。
js jshydra.js scripts/astDecompile.js scriptToRecompile.js > recompiled.js
これにより、JavaScript エンジンがスクリプトを解析し、scripts/astDecompile.js
(JSHydra の一部であるスクリプト) を実行して逆コンパイルし、JavaScript コードに戻します。コメントは「自動的に」削除され (JavaScript エンジンはそれらを保持しません)、逆コンパイルされたコードには改行以外の空白がほとんどありません。改行は、必要に応じて簡単に削除できます。
公式の JSHydraリポジトリには逆コンパイルのバグが多数あるため、代わりに私のフォークを使用することをお勧めします。