为什么返回的是undefined

为什么返回的是undefined

<!DOCTYPE html>

<html>

    <head>

        <meta charset="utf-8" />

        <title>open</title>

    </head>

    <body>

        <script>

           function myFunction(arg){

                if(isNaN(arg)) return;

                return arg*2;

           }

                console.log(myFunction("abc"));


        </script>

    </body>

</html>


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

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

2回答
好帮手慕糖 2018-06-19 15:10:32

你好,1、这里“abc”是字符串,直接使用的字符串可以不用声明。若是个变量的话,需要声明且赋值了才不是undefined。

2、这里是因为,函数是有返回值的,若是没有设置的话,默认返回undefined,这里执行了if语句,返回的return什么内容都没有,所以成了undefined,可以添加个当内容看下,就不是undefined了,例:如下;可以测试下。

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

祝学习愉快~

好帮手慕糖 2018-06-19 10:08:53

你好,因为这里的“abc”不是数字,所以直接执行if语句,返回了,且这里只是return,并没有返回什么东西,所以是undefined了,或者你可以在if语句的返回值设置,返回“传入的不是数字”这样的提示。

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

祝学习愉快~

  • 提问者 蟲师 #1
    undefined这个数据类型是声明未定义,那abc这个参数,都没声明和定义,为什么输出的就是undefined
    2018-06-19 14:14:44
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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