有没有一种方法可以在不使用var关键字的情况下在finally块中定义年龄?我还没有找到办法做到这一点,我觉得有点奇怪,所以我假设有办法。
try{
let age=prompt("What is your age?");
if(age<=0){
throw new Error("Your age can not be " + age + " please type your real age.");
}
else if(typeof age==="string"){
throw new Error("What is not a number please type a number");
}
else if((age % 1) != 0){
throw new Error("Please type an whole number");
}
}
catch(e){
console.log(e)
}
finally{
parseInt(age);// age come up as undefined
}
答案 0 :(得分:1)
没有理由将提示放在try
内,只是将变量声明在它之外。如果需要,您仍然可以使用块进行本地作用域。
{
let age =prompt("What is your age?");
try {
…
} catch(e) {
console.log(e)
}
console.log(parseInt(age));
}