У меня есть несколько вопросов относительно путаницы JavaScript на стороне клиента.
Первый вопрос: Каковы лучший инструмент или лучше всего три инструмента, которые Вы могли предложить для этой операции?
Второй вопрос: Как разработчики должны отладить такой код (в примере с поджигателем), когда экстремальная ситуация появляется в производстве, если код запутывается?
P.S. - я знаю, что это - плохая практика для отладки в производстве, но мы имели некоторые чрезвычайные ситуации и иногда испытывали такие ситуации.
Спасибо за любую справку!
1) компилятор закрытия с расширенной оптимизацией
2) Сначала удвойте их зарплату, а затем покажите им jsbeautifier.org
Если вы ищете обфускацию, я бы сказал JScrambler . У них также есть сравнительная таблица на сайте, в которой перечислены другие хорошо известные обфускаторы javascript.
Для отладки вы можете использовать что-то вроде SpiderMonkey или Rhino. Firebug очень хорош для извлечения декодированного исходного кода при применении кодирования.
Я думаю, что отладчик javascript IE8 (в инструментах разработчика) действительно изменил отступ / переформатировал ваш код, чтобы его снова можно было читать.
Не уверен, что эта функция была добавлена в Firebug, не использовал ее в последнее время, но я действительно хотел эту функцию некоторое время назад.
Наш SD ECMAScript Obfuscator сохраняет карту того, как он запутывает ваш код. Если вы выполняете отладку запутанного кода на стороне клиента, эта карта сообщит, на какой символ в исходном источнике он действительно ссылается.
Если вы хотите отладить «хорошо отформатированный» запутанный код, вы можете получить это с помощью обфускатора ECMAScript, сначала запутав (получая код со всеми потерянными макетами), а затем вернувшись через обфускатор, чтобы распечатать его (он имеет это вариант).
Третий вариант - сгенерировать обфусцированный код в режиме «отладки». Замаскированный результат идентифицируется с производственной запутыванием, за исключением того, что каждая скремблированная переменная называется «XXX». Это делает понимание отлаживаемого кода таким же простым, как и исходный, и при этом проверяет правильность переименования обфускации. После того, как вы выполнили отладку, вы просто повторно запутаете в производственном режиме.