robota_z_pomilkami

Робота з помилками

throw new Error (‘Some error’) - генерация шибки (непойманная ошибка)

try {
  // Code that may throw a runtime error
} catch (error) {
  // Error handling
}
try {							
    //код віполнение
} catch(error) {
    //код если ошибка више
    console.log(error)
    console.log(error.message)	
}

catch() ще приймає обїект помилки, тобто



func auth (login: String, pwd: String) throws {
let trueLogin = «Vasya»
let truePwd = «123»

guard trueLogin == login else {
throw AuthError.dataNotExists
}

guard truePwd == pwd else {
throw AuthError.wrongPassword
}

print(«Vse ok! Privet admin!»)
}
var answer = try auth(login: «Dima», pwd: «123»)
print(answer)

В примере выше ошибка, тип не до конца рассказал

import Foundation

Создание ошибки enum AuthError:Error { case wrongPassword case dataNotExists case serverLost } Проброс ошибок - это ошибка при которой код ошибка возвращается коду віше.Т.е. тому коду, который вызвал эту ошибку

func auth (login: String, pwd: String) throws {

  let trueLogin = "Vasya"
  let truePwd = "123"
  guard trueLogin == login else {
      throw AuthError.dataNotExists
  }
   guard truePwd == pwd else {
      throw AuthError.wrongPassword
  }
  print("Vse ok! Privet admin!")

}

do - catch import Foundation
Создание ошибки
enum AuthError:Error {

  case wrongPassword\\
  case dataNotExists\\
  case serverLost\\

}

Проброс ошибок - это ошибка при которой код ошибка возвращается коду віше.Т.е. тому коду, который вызвал эту ошибку
func auth (login: String, pwd: String) throws {
let trueLogin = «Vasya»
let truePwd = «123»
guard trueLogin == login else {
throw AuthError.dataNotExists
}
guard truePwd == pwd else {
throw AuthError.wrongPassword
}
print(«Vse ok! Privet admin!»)
}
do - catch
do {

  try auth(login: "Vasya", pwd: "1123")\\

} catch AuthError.dataNotExists {
print («Ne tot login»)
} catch AuthError.wrongPassword {
print («Ne tot password»)
}catch {

  print ("Drygie oshibki")\\

}

try? auth(login: «Dima», pwd: «123»)

По сути проверяеш отработало как надо или вернуло nill

try! auth(login: «Dima», pwd: «123»)

  • /sites/data/pages/robota_z_pomilkami.txt
  • Последнее изменение: 2024/01/16 19:17
  • tro