为了账号安全,请及时绑定邮箱和手机立即绑定

关于JavaScript判断是否为数字

关于JavaScript判断是否为数字

FFIVE 2019-01-05 11:39:40
题目描述写出一个表达式,它的结果为2018年是否为闰年。判断闰年的条件:是400的倍数,或者是4的倍数且不是100的倍数。1900 false2000 true2004 true思路先通过 if 判断是否为数字,为数字时,嵌套if判断闰年的条件若不是数字则输出“输入的不是数字”遇到的问题  if (typeof year != 'number') {        return console.log("输入的不是数字");    }通过typeof判断year的类型,但是如果输入非数字会直接报错“xxx is not defined”但是在输入框加上“”就好了整体代码function isLeapYear(year) {    if (typeof year != 'number') {        return console.log("输入的不是数字");     } else {        if ((year % 4 == 0) && (year % 100 != 0) || (year % 400 == 0)) {            return console.log(year + "年是闰年");         } else {            return console.log(year + "年不是闰年");         }     } } isLeapYear(asd);期望解惑1.为什么会出现这样的情况,出现的原因是什么。2.如何才能在调用时不加引号可以得到预期的效果(提示“输入的不是数字”)在此感谢您的解答
查看完整描述

1 回答

?
30秒到达战场

TA贡献1828条经验 获得超6个赞

你直接用isLeapYear(asd);报错? asd这个变量定义了吗?

isLeapYear('asd'); 这样才是传入一个字符串asd,不加逗号传入的是一个变量,如果这个变量没定义的话就报这个错了,要像下面这样先定义

var asd = 'abcd';

isLeapYear(asd);


查看完整回答
反对 回复 2019-01-05
  • 1 回答
  • 0 关注
  • 452 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信