常常用try,catch,finally来捕获异常。
<body>
<input type='text' placeholder='请输入一个5-10之间的数字' id='number'></input>
<button id="btn">确认</button>
<div id='show'></div>
</body>
<script>
var number = document.getElementById('number');
var show = document.getElementById('show');
var btn = document.getElementById('btn');
function catchErr (obj,output) {
var val = obj.value;
try {
if(val === '') throw '是空字符串';
if(val > 10) throw '太大';
if(val < 5) throw '太小';
if(isNaN(val)) throw '不是数字';
if(val <= 10 && val >= 5) {
show.innerHTML = '';
}
}
catch (err) {
var inner = err ? '输入的值' + err : '';
show.innerHTML = inner;
}
finally {
obj.value = '';
}
}
btn.onclick = function () {
catchErr(number, show);
}
document.onkeyup = function (ev) {
var oEvent = ev || window.event;
var code = oEvent.keyCode;
if (code == 13) {
catchErr(number, show);
}
}
</script>