| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: для новичков > Хотелось бы понять функцию |
| Автор: YahоО 9.3.2019, 11:41 | ||
| Хотелось бы понять одну функцию, т.е почему она именно так написана, а конкретнее: зачем в круглых скобках, что идут сразу за фигурной скобкой, написан 0, запятая и что то там еще, зачем нужны эти элементы в круглых скобках в этой функции:
Такая конструкция встречается неоднократно на сайте https://www.iqos.com.ua/themes/custom/pmi3/scripts/head-script.js?v=8.5.11 Как эта функция работает, и что вообще выполняет эта функция в целом? |
| Автор: ksnk 10.3.2019, 18:18 | ||||
| Это - результат минимизации - способа, с помощью которого код делают меньше. Используется специфический JS трюк для оператора в круглых скобках - все операторы, перечисленные через запятую, выполняются последовательно, значение самого оператора - самое последнее значение. Некоторые конструкции вызывают недоумение -
Вероятно тут какая-то ошибка логики минимизатора, так как конструкцию можно было записать и короче
|
| Автор: whatisnot 11.3.2019, 00:24 |
Это не ошибка, а "защита от дураков". |
| Автор: YahоО 11.3.2019, 21:28 | ||
| Защита от дураков по всей видимости это вся функция. Вероятно она вообще никогда не вызывается и не выполняется. Потому что вся функция не рабочая, при попытке ее выполнить все стопорится. Разве что в процессе работы скрипта эта функция подвергается какой либо модификации:
Интересно зачем понадобились такие выкрутасы на том сайте, но это уже не вопрос, потому дальше рассматривать их скрипты уже не интересно, после таких "функций". ksnk, whatisnot спасибо! |
| Автор: ksnk 13.3.2019, 13:50 |
| Вообще-то функция работающая. Если просто выковырять ее из окружающего текста по ссылке выше, то там будут неопределенные переменные (d) и неопределенные функции. а так - какая то js библиотека... С чего вообще возникла идея ковырять чужой код? Для обучения есть более открытые источники |