2016-06-12 61 views
-4

有什么区别我用这些比较的人照顾或者是他们完全地一致:不同的方法来返回true或false

return !!(foo == 'bar') 

return (foo == 'bar') ? true : false; 

if (foo == 'bar') return true; 
else return false; 
+4

你错过了最好的选择:'return foo ==='bar'' – elclanrs

+0

另外:'return foo ==“bar”&& true || false','返回Boolean(foo ==“bar”);','return [false,true] [Number(foo ==“bar”)]];或者其他你可能想要做的事情。 – Bergi

+0

可能重复[什么是!! (not not)operator?](http://stackoverflow.com/q/784929/1529630)和[JavaScript中的问号标记](http://stackoverflow.com/q/1771786/1529630) – Oriol

回答

-1

最好的一个(不包括在名单)是

return foo === 'bar'; 

所有表达式返回相同的结果,但由于=====运算符返回可以简化表达,并具有更可读代码的布尔值。