2017-04-27 70 views
-6

的JavaScript三元运算符的隐性逻辑

function even_or_odd(number) { 
 
    return number % 2 === 0 ? 'Even' : 'Odd'; 
 
} 
 

 
function even_or_odd(number) { 
 
    return number % 2 ? "Odd" : "Even" 
 
}
为什么这两个函数返回相同的结果?

return number % 2 ? "Odd" : "Even"如何工作?

+0

为什么有这么多downvotes? –

回答

1

0在javascript中是一个falsy值。

var v = 0; 
 

 
if(v) { 
 
    console.log("true"); 
 
} else { 
 
    console.log("false"); 
 
}

number % 2将返回0(这是falsy)或1(这是truthy)。因此,如果numbereven然后number % 2将返回0和三元的条件将是false,...