如何用javascript编写较短的控制语句

How to write shorter control statements in javascript

本文关键字:控制语句 何用 javascript      更新时间:2023-09-26

如果我想在javascript中测试一个的两个属性,我必须编写

((a test b ) && (a test c))

有写这样的东西的方法吗

(a test ( b && c))

例如

if(a === NaN || a === Infinity){…}

if (a === (NaN || Infinity)){…}

只是想知道是否有这样的人手短缺。

遗憾的是,没有

CCD_ 1将测试CCD_。首先,它将检查(NaN || Infinity)(评估为Infitity(,即检查。

此外,针对NaN的检查总是返回false。试试看:NaN === NaN。请改用isNaN(a)

是的,有一个快捷方式:

if ([val1, val2, val3 /*...*/].indexOf(a) > -1){ /* ... */ }

甚至更短:

if (~[val1, val2, val3 /*...*/].indexOf(a)){ /* ... */ }

注意,它不适用于NaN,因为与NaN相比是无用的。即使NaN == NaN是假的,这就是为什么有isNaNNumber.isNaN