为何一定要加return? return result;这句指的是返回result值?

为何一定要加return? return result;这句指的是返回result值?

<script>

        var obj1={

            a:1,

            b:2,

            c:[33,44,{

                m:55,

                n:66,

                p:[77,88]

            }]

        };

               //新参o就是对象obj1里的元素

             function deepClone(o){

                 if(Array.isArray(o)){

                     var result=[];

                     for(var i=0;i<o.length;i++){

                         result.push(deepClone(o[i]));

                     }

                 } else if(typeof o=="object"){

                     var result={};

                     for(var k in o){

                        result[k]=deepClone(o[k]);

                     }

                 }

                 else{var result=o;}

                 //??

                 return result;

             }

             var obj2=deepClone(obj1);

             console.log(obj2);

    </script>


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

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

1回答
好帮手慕慕子 2021-01-25 18:54:54

同学你好, 对于你的问题解答如下:

1、因为js语法中规定,函数内部不使用return设置返回值,默认返回undefined。那么不加return,deepClone方法调用后返回的是undefined,无法实现效果,所以一定要加return。

2、是的,return result 这句代码表示返回值为result值

祝学习愉快~

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

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

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

0 星
请稍等 ...
微信客服

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

帮助反馈 APP下载

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

公众号

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

在线咨询

领取优惠

免费试听

领取大纲

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