返回false与return一样?

时间:2011-04-08 14:15:39

标签: javascript

return false 

与:

相同
return

8 个答案:

答案 0 :(得分:39)

没有

var i = (function() { return; })();

i === undefined表示i == false && i == '' && i == null && i == 0 && !i

var j = (function() { return false; })();

j === false表示j == false && j == '' && j == null && j == 0 && !j

JS中的弱运算符使得它似乎返回相同的东西,但它们返回不同类型的对象。

答案 1 :(得分:32)

不,return;return undefined;相同,这与没有返回语句的函数相同。

答案 2 :(得分:8)

没有。他们不一样。从函数返回false将返回布尔值false,其中void return将返回undefined

答案 3 :(得分:5)

不,一个返回false,另一个返回undefined

请参阅this JSFiddle

但如果您在没有truefalse的情况下进行测试,则会评估truefalse

function fn2(){
    return;
}

if (!fn2()){
    alert("not fn2"); //we hit this
}

this JSFiddle

http://jsfiddle.net/TNybz/2/

答案 4 :(得分:5)

它返回undefined它通常用于打破函数中以下行的执行

答案 5 :(得分:4)

不,我不这么认为。通常返回False以指示函数应该执行的指定操作失败。这样调用函数就可以检查函数是否成功。

返回只是一种操纵编程流程的方法。

答案 6 :(得分:3)

没有

在firebug控制台(或任何地方)测试 -

alert((function(){return;})() == false); //alerts false.

alert((function(){return false;})() == false); //alerts true.

alert((function(){return;})()); //alerts undefined

请注意,如果您(甚至隐式地)将undefined强制转换为boolean,例如在if语句中,它将评估为false。

相关有趣的阅读herehere

答案 7 :(得分:2)

未定义

console.log((function(){return ;})())

是的,如果在patters中很好地使用,那么在javaScript中返回是如此强大的东西。您可以一直返回[]数组,{}对象也可以返回函数。

返回“this”,您可以继续执行基于类的对象和原型继承以及所有这些。