1

Если я следующийловли пользовательских исключений в Js

function ValidationException(nr, msg){ 
    this.message = msg; 
    this.name = "my exception"; 
    this.number = nr; 
} 
function myFunction(dayOfWeek){ 
    if(dayOfWeek > 7){ 
     throw new ValidationException(dayOfWeek, "7days only!"); 
    } 
} 

вопрос: Как я могу поймать этого конкретного исключения в блоке поймать?

ответ

6

JavaScript does not have a standardized способ улавливания различных видов исключений; однако вы можете сделать общий catch, а затем проверить тип в catch. Например:

try { 
    myFunction(); 
} catch (e) { 
    if (e instanceof ValidationException) { 
     // statements to handle ValidationException exceptions 
    } else { 
     // statements to handle any unspecified exceptions 
     console.log(e); //generic error handling goes here 
    } 
}