@righto

Как вам качество кода (javascript)?

Делаю тестовое, в Javascript новичок. Можете ли дать пару советов по коду?

https://codepen.io/anon/pen/LKXgQG
  • Вопрос задан
  • 168 просмотров
Пригласить эксперта
Ответы на вопрос 1
freislot
@freislot
Frontend-разработчик
Верно написали выше в комментарии, например начните с объединения кода addEventListener'ов. Это можно сделать разными способами. Легко гуглится по запросу addeventlistener on multiple elements.

Вот эта запись obj.innerHTML-- работает (конкретно строка приводится к числу), но она не очевидна для других людей, читающих код. Это так называемая "магия" js, старайся избегать таких вот строк, где происходят не очевидные вещи, такие как приведение типов. Лучше завести переменную count например и присвоить ей 15 и работать с ней, а ее значение выводить на страницу.

Дальше, я бы наверное сделал методы start() и stop() и в них уже описал логику таймаутов, но таймаут я бы тоже не использовал, я бы взял setInterval() и для остановки clearInterval().

Ну остальное так по мелочи, я бы допустим все селекторы вынес на самый верх, там им место как мне кажется
let successLink = document.querySelector('.success-link'),
		successBlock = document.querySelector('.success-block'),
		failBlock = document.querySelector('.fail-block'),
		close = document.querySelector('.close'),
		closeLink = document.querySelector('.close-link');
		close2 = document.querySelector('.close2'),
		closeLink2 = document.querySelector('.close-link2');

И раз уж ты решил использовать ES6 синтаксис (let), то правильнее будет использовать const т.к селекторы не изменяются по коду. Ну и в целом форматирование и отступы надо соблюдать, не везде красиво скажем так :)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
25 нояб. 2024, в 02:45
2000 руб./за проект
24 нояб. 2024, в 23:46
20000 руб./за проект