关于return的问题

关于return的问题

	    function add(arg){
	    	if(isNaN(arg))return
	    	{
	    	    return arg*2 ;
	    	}
	    }
	    document.write(add(456));

如代码,if大括号的用法是 这个位置正确吗?

if(isNaN(arg))return
    {
       return arg*2 ;
    }  

还有就是return的用法,为何是return arg*2 ;  而不能是arg*2 return; ? 

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

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

3回答
Aimee_ 2017-08-01 08:58:14

if(isNaN(arg))return这句的意思是:如果arg是一个非数字话就返回return(return后面不加任何返回值的意思是提早结束并退出执行

【  说明:

       1,函数执行完return语句后之后会立即停止并立即退出

       2,return语句也可以不带任何返回值,用于提前停止函数执行不需要返回值

对了,你的后面结束候加个分号,保持好习惯!!!

Miss路 2017-05-25 11:59:30

关于你问题return的问题这是他的语法,是规定。祝学习愉快!但是你的代码有问题,首先if()后面不用加return。你的判断是如果你的参数不是一个数字的时候会走 return arg*2 ;,if(isNaN(arg))如果你传递的是不是一个数字的话会放回true的,这个时候会执行return arg*2 ,但是会返回一个“NaN”。别的类型不能和2相乘,因此,参考一下代码。再认真分析一下。祝学习愉快!

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>innerHTML</title>

</head>

<body>

    <script>

     function add(arg){

        if(isNaN(arg))

        {

            return "error";

        }

        return arg*2;

    }

    document.write(add(2));

    </script>

</body>

</html>


  • Aimee_ #1
    谁说if后面不用加return啊?if(isNaN(arg))return;只是没有做任何处理而已,代替了你的return "error";那部分的if而已;
    2017-08-01 08:53:30
  • 潜狸 回复 Aimee_ #2
    是的,起了作用的
    2017-11-29 19:03:17
烁罡 2017-05-25 11:19:57

首先if大括号的用法没错,但是isNaN用法错了,应该是isNaN(arg)==false/true 你要判断是否为数字或者非数字,至于return的用法,return后面跟上返回的值,应该是规定吧。

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

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

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

0 星
HTML5与CSS3实现动态网页 2018
  • 参与学习       1887    人
  • 提交作业       4643    份
  • 解答问题       5760    个

有HTML和CSS基础,却不知道如何进阶?本路径带你通过系统学习,完成从“会做网页”到“做出好的动态网页”的蜕变,迈出成为前端工程师的第一步。

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

在线咨询

领取优惠

免费试听

领取大纲

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