Javascript 如何在JS中对逻辑运算符进行分组?

Javascript 如何在JS中对逻辑运算符进行分组?,javascript,Javascript,这是一个简单的初学者问题-让我们看看我们的状态: var status = 'unknown'; 我们希望在以下情况下获取错误: if (status !== 'good' && status !== 'bad'){// error} 我想把它缩短为: if (status !== 'good' && 'bad'){} 但它不起作用?这是可能的吗?要使您的代码更完整,您可以创建一个条件数组,然后检查字符串是否与这些条件中的任何一个匹配: if (!['goo

这是一个简单的初学者问题-让我们看看我们的状态:

var status = 'unknown';
我们希望在以下情况下获取错误:

if (status !== 'good' && status !== 'bad'){// error}
我想把它缩短为:

if (status !== 'good' && 'bad'){}
但它不起作用?这是可能的吗?

要使您的代码更完整,您可以创建一个条件数组,然后检查字符串是否与这些条件中的任何一个匹配:

if (!['good', 'bad'].includes(status))
但是,没有一个像您所想的那样的操作员快捷方式。

您可以使用

if (!['good', 'bad'].includes(status)){}

我认为不可能用你的思维方式来缩短这个时间。您可以使用一系列条件来实现相同的结果。然而,也许值得思考的是,为什么要缩短这段非常精细、易于阅读的代码。@Ben我确实希望使代码看起来更具可读性(我认为是这样)。如果您有更多的状态,如警告/严重/不可用等,则状态!='“好”&“坏”&“警告”&“关键”看起来更干净,然后重复状态!==。但下面的例子很好,问题就解决了。有时过于花哨会损害代码的可读性。可能的重复