Задать вопрос
@Deadorik

Как проверить что ответ предыдущих функций именно if (true)?

Делаю проверку формы заказа. Есть несколько проверок полей и есть отдельная функция которая ответы сравнивает. Если 3 проверки успешны (ветки if), то форма отправляется.

Как сказать что ответы предыдущих функций должны быть if? Обычный true не помогает, т.к функции все равно выполняются. Пробовал return true в ветках функций проверок, но код тоже работает некорректно.

// Проверка номера телефона
  function numberTest(input) {
    const numberValidate =
      /^(\+7|7|8)?[\s\-]?\(?[489][0-9]{2}\)?[\s\-]?[0-9]{3}[\s\-]?[0-9]{2}[\s\-]?[0-9]{2}$/; // Регулярка для проверки телефона
    const phoneRegexp = input.value.match(numberValidate); // Проверяю что ввел пользователь с регуляркой

    if (phoneRegexp) {
      console.log("Номер подходит");
      removeError(input); // Если номер подходит, то удали ошибку и передай конкретное поле
    } else {
      console.log("Номер не подходит");
      addError(input); // Если номер не подходит, то добавь ошибку и передай конкретное поле
    }
  }

// Общая проверка
  function testAll() {
    if (numberTest && emailTest && adressTest) {
      console.log("Все проверки успешны");
    } else {
      console.log("Поля проверку не прошли");
    }
  }
  • Вопрос задан
  • 72 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
Seasle
@Seasle Куратор тега JavaScript
- if (numberTest && emailTest && adressTest) {
+ if (numberTest() && emailTest() && adressTest()) {

ну и передать аргументы не забудьте.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы