Как я могу переписать код, используя try, throw, catch и, наконец, для обработки ошибок? - PullRequest
0 голосов
/ 20 апреля 2019

Это на самом деле полностью функциональный код (если кто-то хочет использовать). Мой вопрос заключается в том, как переписать код с помощью синтаксиса try..catch..throw..finally для обработки ошибок

  $(document).ready(function () {
     $(".submit").click(function (event){
        event.preventDefault()

        var email = $(".email").val()
        var subject = $(".subject").val()
        var statusElm = $(".status")
        statusElm.empty()

        if(email.length > 5 && email.includes("@") && email.includes(".")) {
    statusElm.append("<div>valid email</div>")
        }else{
    statusElm.append("<div>invalid email</div>")
        }

        if(subject.length > 2) {
    statusElm.append("<div>Valid Subject</div>")
        }else{
    statusElm.append("<div>invalid subject</div>")
        }
    })
})

UPDATE: Я придумал что-то вроде этого;

      $(document).ready(function () {
    $(".submit").click(function (event){
        event.preventDefault()

        var email = $(".email").val()
        var subject = $(".subject").val()
        var statusElm = $(".status")
        statusElm.empty()


  try { 
    if(email.length > 5 && email.includes("@") && email.includes("."))  throw "is not an email";
    if(subject.length > 2) throw "is not long enough";

  }
  catch(err) {
    status.innerHTML = "Input " + err;
   }
    })
  })

но не выполняется. Я не знаю, как заставить это работать.

Ответы [ 2 ]

0 голосов
/ 21 апреля 2019

Я создал другую функцию для попытки и перехвата частей в другом файле JS, так что все хорошо. Просто хотел, чтобы все знали.

0 голосов
/ 20 апреля 2019

Вы можете использовать try/catch/throw/finally практически только тогда, когда код на самом деле выдает ошибку. Вы можете бросить свою собственную ошибку в try, но это будет победой цели.

...