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

关于return的问题

关于return的问题

超级巨浪大切 2018-03-08 10:21:02
function mutation(arr) {   // 请把你的代码写在这里   var arr1=arr[0].toLowerCase();   var arr2=arr[1].toLowerCase();   for(var i=0;i<arr1.length;i++){     if(arr1.indexOf(arr2.charAt(i))==-1){         return false;     }else{         return true;             这里是我第一次写的,return貌似放错地方了     }                    } } mutation(["hello", "hey"]); function mutation(arr) {   // 请把你的代码写在这里   var arr1=arr[0].toLowerCase();   var arr2=arr[1].toLowerCase();   for(var i=0;i<arr1.length;i++){     if(arr1.indexOf(arr2.charAt(i))==-1){         return false;     }       }   return true;                    这是修改之后的,return放在for循环的外面就可以了 } mutation(["hello", "hey"]);请问!!! 我两次写的代码中,return的含义有什么不同吗?? 我实在是弄不明白了, 有时候写了一大堆,然后return放错地方导致功亏一篑。。。
查看完整描述

1 回答

已采纳
?
QQ_随意

TA贡献51条经验 获得超28个赞

return 就是返回一个结果

上面那个函数在做第一次循环的时候就return了,代码就停止执行,返回return的结果

第二个函数循环里面只有满足条件才会return false,如果循环完都没有条件满足,就return true;

也就是说在一个作用域下return 返回一个结果并让该作用域下的代码停止执行

查看完整回答
反对 回复 2018-03-08
  • 超级巨浪大切
    超级巨浪大切
    请问前辈 为什么上面那个函数在做第一次循环的时候就return了呢? 难道不是if不满足就会执行else吗?
  • QQ_随意
    QQ_随意
    你的else里面不还是reruen了?
  • 1 回答
  • 0 关注
  • 1057 浏览
慕课专栏
更多

添加回答

举报

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