问:编写一个程序,通过接收用户的数字来区分奇数和偶数
我使用if else语句做到了,但是当我取消输入时无法输出输入cancel。我想取消输入,并在输入非数字的内容时让它知道。if 不能将 null 和 NaN 识别为 false 吗?那么如何使其易于识别呢?
<!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <title>JAVASCRIPT</title> </head> <body> <script> let num = Number(prompt('put a number',15)); let re; if(num == null){ re = 'no' } if(num != Number){ re ='please put a number' } if(num % 2 === 0){ re = 'even'; }else if(num % 2 === 1){ re = 'odd'; } </script> </body> </html>
您的代码存在几个问题:
num != Number
isNaN(num)
prompt
null
NaN
下面是一个修复了上述问题的代码:
<!doctype html> <html lang="ko"> <head> <meta charset="utf-8"> <title>JAVASCRIPT</title> </head> <body> <script> let input = prompt('put a number'); let num = parseFloat(input); let re; if (input === null) { re = '取消输入'; } else if (isNaN(num)) { re = '请输入数字'; } else { if (num % 2 === 0) { re = 'even'; } else { re = 'odd'; } } console.log(re); </script> </body> </html>
修复后的代码首先检查输入是否为 null,然后检查输入是否为数字。如果输入为 null,则输出 “取消输入”;如果输入不是数字,则输出 “请输入数字”;如果输入是数字,则输出奇偶性。