1

Тема: Чому JS настільки складний? В чому потреба?

Чому коли я заходжу на якийсь сайт, викликаю соурс, знаходжу перший ліпший скрипт і в ньому все написано в один рядочок, імена змінних типу "a, i, n" і читати його аж надто складно?
Яке відношення має цей скрипт до Java?
Чи є онлайн та офлайн-програми для аналізу  JS коду, з форматуванням і підсвіткою?
Мені потрібно це для того щоб обходити деякі функції типа реклами, бо AdBlock блокує <div> а не JS.
Використовую
https://chrome.google.com/webstore/deta … mpld?hl=uk
Це розширення хрома для додавання свого js/css на сторінку сайта.

2 Востаннє редагувалося DOP (12.11.2019 16:13:46)

Re: Чому JS настільки складний? В чому потреба?

vаrіg2kо написав:

Чому коли я заходжу на якийсь сайт, викликаю соурс, знаходжу перший ліпший скрипт і в ньому все написано в один рядочок, імена змінних типу "a, i, n" і читати його аж надто складно?

Те що ви бачите - це код після мініфікації.

Яке відношення має цей скрипт до Java?

Саме до Java - ніяке.

Чи є онлайн та офлайн-програми для аналізу JS коду, з форматуванням і підсвіткою?

Будь-яка відома IDE чи редактор: Visual Studio Code, Adobe Brackets, Notepad++ і т.д.

Подякували: leofun01, bvn2

3

Re: Чому JS настільки складний? В чому потреба?

А розмініфікувати як?

4

Re: Чому JS настільки складний? В чому потреба?

vаrіg2kо написав:

А розмініфікувати як?

мініфікація включає в себе заміну нормальних назв змінних та функцій на щось коротеньке, тому якщо автор спочатку написав

var windowHeight = '100px';

а мініфікатор його перетворив на

var a='100px'

то здогадатись, яку назву мала змінна a до мініфікації - неможливо.

Але щоб легше було читати той код, можна використати ось цей сервіс, наприклад.

https://unminify.com/

Подякували: leofun01, vаrіg2kо2

5

Re: Чому JS настільки складний? В чому потреба?

Трошки офтопу, я не знаю як працює адблокер але все що ви бачите на сайті включаючи рекламу лелжить в DOM і описане хтмлом. Тобто по суті реклама це ті самі діви.

6

Re: Чому JS настільки складний? В чому потреба?

truesupport написав:

Трошки офтопу, я не знаю як працює адблокер але все що ви бачите на сайті включаючи рекламу лелжить в DOM і описане хтмлом. Тобто по суті реклама це ті самі діви.

мабуть, мається на увазі реклама, котра додається динамічно. Наприклад, є скрипт, котрий перевіряє, чи є в DOM елемент з певними атрибутами, і якщо його немає, то він додається. Таким елементом може бути блок з рекламою, і якщо ви його просто видалите з html, то він знову додасться.

Подякували: vаrіg2kо1

7

Re: Чому JS настільки складний? В чому потреба?

FakyNayn, дякую.
По поводу скрипта все трошки гірше.
Adblock блокує, ну наприклад <div class="ad container">. Тобто є осмислене і не змінне ім'я.
Власники сайтів борються з цим наступним чином. Скрипт php, на початку вставляє щось типу
<div class="jhfk-375">, а потім, впродовж роботи, уже JS міняє його на різні рандомні значення і через кожних пів хвилини підвантажує туди нову рекламу. Цей скрипт точно не перевіряє, чи є щосі в dom. Якщо зайти в соурс, кожні пів хвилини міняється назва класу...

8

Re: Чому JS настільки складний? В чому потреба?

Можна також блокувати дїтїв, якшчо знаєш де воно знаходе ся. Маю сумнів, же там всюди змінні назви класів.

9

Re: Чому JS настільки складний? В чому потреба?

Ну може можна перевизначити саму js функцію яка вставляє рекламу. Щоб вона її не вставляла. Або створити свою js функцію яка буде слухати коли змінився дом. Аналізувати чи то додалась реклама і якщо то вона то видаляти її з дом.

10

Re: Чому JS настільки складний? В чому потреба?

Можна блокувати скрипти.