Priority | 3 |
Title | Объявление переменных в теле класса |
Category | Error |
Description |
Нельзя объявлять переменные в теле класса *Публичные поля объявляются без ключевого слова var/const/let |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 3 |
Title | Попытка доступа к значению через имя класса |
Category | Error |
Description |
У класса нет значения username. Нужно использовать this, чтобы обратиться к значению экземпляра. Да и вообще бесполезная функция |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 2 |
Title | Лучше выбрасывать исключение с объектом Error |
Category | Error Handling |
Description |
Лучше делать так: throw new Error('msg') |
Additional Info | https://eslint.org/docs/rules/no-throw-literal |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 2 |
Title | Имя метода написано через snake_case |
Category | Code-Style |
Description |
В JavaScript принято использовать camelCase |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 1 |
Title | XMLHttpRequest использует устаревшее API |
Category | Maintainability |
Description |
Лучше использовать Fetch |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 3 |
Title | Передача пользовательских данных через метод GET |
Category | Reliability |
Description |
Метод GET используется в основном для полчуения данных, а еще он раскрывает пользовательские данные, так как передает их в заголовке запроса. Таким образом нужно использовать POST для авторизации |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 3 |
Title | Запрос не отправляется |
Category | Error |
Description |
Чтобы отправить запрос нужно воспользоваться методом xhr.send() |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 3 |
Title | Неправильное использование переменной + попытка изменить константу ++ |
Category | Architecture |
Description |
Значение константы нельзя изменить. Такой код выдаст ошибку. И в целом переменная result не имеет никакого смысла. Она всегда возвращает false, так как xhr.onload работает асинхронно. Также манипуляции с result не выглядят логичными. То, что она может иметь два типа данных (response и bool), считается плохой практикой. Лучше иметь некий массив, который будет хранить в себе ошибки. Если массив пустой, то все ОК. В любом случае код неиспользуемый. Лучше использовать Fetch, и получать результат его работы в асинхронной функции, а там уже обрабатывать. |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 3 |
Title | Сравнение числового значения со строкой |
Category | Error |
Description |
xhr.status возвращает число. При строгом сравнении условие никогда не будет выполняться. |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 2 |
Title | Неправильная обработка события |
Category | Complexity |
Description |
Лучше прикрепить обработчик события submit ко всей форме. |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 1 |
Title | Использование сторонней библиотеки jQuery |
Category | Maintainability |
Description |
Само по себе использование jQuery не является чем-то плохим. Но все же лучше использовать возможности современного JavaScript*. Этого же эффекта возможно добиться без jQuery.
|
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 1 |
Title | Ручное вытаскивание данных из полей |
Category | Performance |
Description |
Лучше использовать ссылку на форму и извлекать из нее значения полей. Еще можно исползовать FormData(formElement). |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 2 |
Title | Объявление через var |
Category | Maintainability |
Description |
Лучше не использовать var, особенно там, где его применение не несет дополнительной пользы. Лучше использовать const, так как нет взаимодействия со внешним scope и нет переопределения. |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 3 |
Title | Нет ключевого слова new + результат всегда false |
Category | Error |
Description |
Ключевое слово new необходимо, чтобы создать пустой объект для экземпляра класса. Результат всегда false |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |
Priority | 3 |
Title | Используется нестрогое равенство |
Category | Reliability |
Description |
Любое правдивое значение res приведет ко входу в цикл. Лучше использовать более явное условие. |
SHA | 759239b3ca4c4cc68860047ffd9076508d784fba |