为什么弹窗提示后关闭页面上的是undefined

为什么弹窗提示后关闭页面上的是undefined

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8" />
    <title>函数定义的位置</title>
</head>
<body>
<script type="text/javascript">
//在此处补充代码
    function add(num1,num2){
        var num1=parseFloat(num1);
        var num2=parseFloat(num2);
        function isNumber(){
            if(!isNaN(num1)&&!isNaN(num2)){
                return num1+num2;               
            }else{
                alert ("请传入数字类型的参数");
            }
        }
        return isNumber();
    }
    document.write(add('e',3));
</script>
</body>
</html>



正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
好帮手慕星星 2018-06-11 18:17:37

http://img1.sycdn.imooc.com//climg/5b1e4b5b0001d3ea03010053.jpg

最外层是要输出内容的呀,你没有返回的结果,所以是undefined。如果把else中也变成运算,参考:

http://img1.sycdn.imooc.com//climg/5b1e4bcc0001324505550224.jpg

这样结果就是NaN了。因为e通过parseFloat()转化成了NaN,所以结果就是NaN。

好帮手慕星星 2018-06-11 17:57:53

因为不满足if判断条件走的是else路线,直接弹出提示,并没有对num1和num2进行运算操作,所以输出的就是undefined。自己再理解下,祝学习愉快~~

  • 提问者 小蜗牛linner #1
    执行了else里面的,可为什么还会在页面上显示undefined
    2018-06-11 18:04:55
妮可妮可妮_ 2018-06-11 17:57:46

http://img1.sycdn.imooc.com//climg/5b1e478d0001aff804650373.jpg

可以参考上图修改代码哦!

加油!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
组件化思想开发电商网页 18版
  • 参与学习           人
  • 提交作业       467    份
  • 解答问题       4826    个

本路径带你通过系统学习HTML5、JavaScript、jQuery的进阶知识,不仅如此,还会学习如何利用组件化的思想来开发网页,知识点+案例,使得所学可以更好的得到实践。

了解课程
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师