Jshint对这个表达不满意:
var amount = $('.some-input').val()
// Check for NaN or <= 0
if (!(+amount > 0)) {
...
}
Run Code Online (Sandbox Code Playgroud)
它声称混淆使用!.有没有办法在不添加太多代码的情况下重写表达式?
没有否定的等价物是:
if (amount <= 0 || isNaN(amount)) {
Run Code Online (Sandbox Code Playgroud)
所以,不要说"不大于",而是说"小于或等于".另外,不是每个人都可能知道,NaN真的不能相比的数字(即总是返回false),因此一个明确的测试可以让这个表达式更容易阅读和理解的整体.
显然人类发现否定更难以理解,我不会说它没有真相.
| 归档时间: |
|
| 查看次数: |
127 次 |
| 最近记录: |