Pao*_*olo 2 javascript firebug
这是正常的吗?它是一个功能还是一个bug?(我正在使用萤火虫):
>>> '' || true
true
>>> '' || false
false
>>> '' && false
""
>>> '' && true
""
Run Code Online (Sandbox Code Playgroud)
它没有将空字符串转换为Boolean.
||它正在评估左侧,其中一个空字符串是假的.然后它检查右侧(因为它是一个或,并且那一侧可能是真的),并返回该值.
&&因为&&需要双方都是真的而左手边是假的,所以不用费心去检查右手边(短路评估).因此,它只返回左侧,即空字符串.
JavaScript始终返回它评估的最后一个值.
>>> '' || 0 || undefined || null || false || NaN || 'hello'
"hello"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
152 次 |
| 最近记录: |