如果你真的想做一件事,你一定会找到方法;如果你不想做一件事,你一定会找到借口。

JavaScript中 return; 、return false; 与return true的区别

工作中有时候用到  return; ,有时候用到  return false;  还有时候会用到  return true; 

这三个到底是什么区别?为什么一会这个一会又那个!

 

1、先看下return 定义

MDN 中 这样定义 return(Generator.prototype.return() ),

定义:return() 方法返回给定的值并结束生成器。

重点:返回1个值,结束生成器。

2、对比区别

跟着定义过来对比,就ok 了。

相同点:都会结束生成器(只结束当前的函数)

区别:当然是返回值不一样

return;没有定义返回值,就返回 undefined,合情合理反正你没定义嘛;

return false:返回定义的false;

return true;返回定义的true;

当然也可以有其他的返回值,具体要看当前函数的作用是什么了!

3、测试用例

let a =  ()=>{
    return;
    console.log("程序中断没执行");
}

let b = ()=>{
    return false;
    console.log("程序中断没执行");
};

let c = ()=>{
    return true;
    console.log("程序中断没执行");
};
function test(){
    console.log("------------------------------------")

    a();
    let aa= a();
    console.log("直接return;无中断,并返回:" + aa);

    console.log("------------------------------------")
    b();
    let bb= b();
    console.log("return false;无中断,并返回:" + bb);
    console.log("------------------------------------")

    c();
    let cc= c();
    console.log("进入return true;无中断,并返回:" + cc);
    console.log("------------------------------------")
};
test();

4、总结

  眼见为实,就是返回值不一样,其他真没有区别

 

以上内容纯属个人理解,如有争议,尽快评论指出,以便及时修正!

 

posted @ 2017-10-13 14:43  wanglehui  阅读(1045)  评论(0编辑  收藏  举报