我来到这个代码,但我不很了解它做什么..什么是返回void 0 === i &&(i = 3),0 ===我? (..A ..):(..B ..)呢?
test.update = function(i)
{
return void 0 === i && (i = 3), 0 === i ? (..A..) : (..B..)
}
(..A ..)和(..B ..)的代码,我的避风港只是其他线路张贴。
比方说,如果i
将有一个0值,该函数将返回什么?
什么是“void 0 ===我& &(i = 3)”?特别是(i = 3)
。这是否意味着if (void 0 === i)
为真并且i
可以得到3,i
会是3?那么逗号呢?我已经检查了这个question,但我仍然不明白。
对不起,有很多问题,但我想有一个完整的答案,所以我可以完全理解发生了什么。
谢谢
我猜它只是执行'(..B ..)''什么价值i'传递语句块。 – pttsky
'void 0 ===我似乎检查'i'是否是'undefined'。 'i'没有定义时,'i = 3'将'i'设置为数字3。 – evolutionxbox
'0 === i''检查'i'是否为'0',然后执行'(..A ..)'或'(..B ..)'。该返回使用[逗号](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comma_Operator)和[三元操作](https://developer.mozilla.org/ EN /文档/网络/的JavaScript /参考/运营/ Conditional_Operator)。 – evolutionxbox