Я пишу простую функцию разделения Javascript и занимаюсь обработкой исключений с помощью throw
, try()
и catch()
проблема в том, что код с исключением не работает вообще даже приглашение не показано
вот мой код
<html>
<head>
<title>JavaScript lab</title>
<meta charset="utf-8" />
<script language="javascript">
function div(a,b) {
if (b == 0)
throw { name: 'notallowed', message: 'div by zero' };
var c = a/b;
alert(c);
}
}
try {
var x = prompt("Enter num1");
var y = prompt("Enter num2");
div(a,b);
}
catch(e) {
alert("Error: "+e.message);
}
</script>
</head>
</html>
//modify
function div(a,b) { //function div(a,b)
if (b == 0){
throw { name: 'notallowed', message: 'div by zero' };
var c = a/b;
alert(c);
}
}
try {
var x = prompt("Enter num1");
var y = prompt("Enter num2");
//modify
div(x,y);//div(a,b);
}
catch(e) {
alert("Error: "+e.message);
}
Может быть, это может быть хорошо работает
function div(a,b) {
if (b == 0){
throw { name: 'notallowed', message: 'div by zero' };
}
var c = a/b;
alert(c);
}
Вы пропустили {
в конце if(b==0)
Это должно работать
function div(a,b) {
if (b == 0) {
throw { name: 'notallowed', message: 'div by zero' };
}
var c = a/b;
alert(c);
}
try {
var x = prompt("Enter num1");
var y = prompt("Enter num2");
div(x,y);
}
catch(e) {
alert("Error: "+e.message);
}