Алексей Уколов, При единичном запуске так и должно быть. То есть функция callback создалась один раз и движок должен с ней работать. Но если мапинг нужно вызвать часто, то функция будет пересоздаваться же на каждый вызов мапинга. Возможно я не совсем точно выразился про "набор данных".
Но, в любом случае, это, как я и сказал, прям преждевременная оптимизация. Но это единственное, что я вижу, можно было бы сделать ещё более оптимально, в реализации автора, если бы это было на каком то реальном проекте, где функция могла бы переиспользоваться.
Ваш вариант наиболее оптимальный на данный момент. Другие способы не требуются.
Ну функцию мапинга разве что для больше оптимальности можно вынести отдельно. Но это так, многими принебрегается и на небольших наборах данных будет как преждевременная оптимизация.
В требованиях к описанию проекта есть диаграмма классов или компонентов.
В моей игре нет классов, а компонент всего один.
Так может стоит задуматься, а правильно ли Вы реализовали свою игру? Усвоили ли материал должным образом?
ну а так, юмл диаграмма не привязана к языку и его возможностям, а лишь служит для описания процесса и взаимодействия сущностей. Схематично опишите что и как в коде работает, какие действия за какими происходят, какие есть условия и тд.
Прошу не ругать я только учусь и поэтому ошибок куча.
а ОЧЕНЬ хочется...
Чем Вам не угодил input type radio с одинаковым атрибутом name?
А если возможен множественный выбор, то input type checkbox? Только тогда сделайте квадратиками, а не кружками..
В коде вижу будто бы табы, но внешне табами не пахнет, тоже вопрос..
Итого пользовательский диссонанс уже по трём пунктам...
В что подсказывает логика?
1) Если последняя итерация цикла, то не рисовать hr.
2) Если этот hr - последний элемент в контейнере, а лезть в цикл не хочется, либо нет возможности, то скрыть через css. Как скрыть последний элемент в css? Через псевдоселектор :last-child
gasonger0, 1) я указал куда копать в DOMDocument 2) У Вас сложности прочитать статью и найти то же самое в вашем "инструменте-аналоге" и нужно сразу решение? Тогда Вам на фриланс.
LookyLoos, Ну какая именно прослойка это уже не ко мне. Что-то, что отлавливает сетевую активность, логи браузера и даёт до этого доступ.
Ещё можно посмотреть в сторону service worker
LookyLoos, ну мой эксперимент показывает что даже если сделать декоратор над console.methodName то браузерные выводы он перехватывать не будет. То есть cors не отловится, например.
Так что без прослойки, мне кажется, это не реализуемо на просто js
Ну..
Для ошибок оборачивать всё в try catch, очевидно.
Для предупреждений это конечно же не сработает.
Для console.log() и тд можно сделать "декоратор".
Будет ли это работать для выбрасываемых самим браузером сообщений - надо пробовать.
Программно или что? Или просто зайти один раз сделать?
Через дев тулзы в разметке правой кнопкой по нужной ноде - capture node screenshot, сделает скриншот html элемента.
fleshik, Переменная, но не собственная для функции. Собственной для функции она бы была если бы была объявлена через соответствующее ключевое слово - var/let/const, либо была бы аргументом функции.
А так, запись counter = counter + 1 в движке выполняется примерно так(код выполняется справа налево):
1) прибавить 1 к
2) counter
3) Что такое counter? Идём искать.
4) Нашли снаружи что counter это -10 (при первом вызове)
5) отлично, значит прибавляем 1 к -10, получаем -9
6) Ага, оператор =, значит нужно результат операции сложения поместить в какую то переменную
7) В какую? counter? Ищем counter - найдено снаружи.
8) Меняем значение снаружи на -9.
Интересный у Вас вопрос.
Задание: не нужно делать return, нужно изменять объект.
Решение: не делает return и изменяет объект.
Вы: забыл поставить ретурн, поставил, объясните зачем я это сделал ?
*мем с джеки чаном wtf*