Javascript 为什么不能识别多个if或条件?

Javascript 为什么不能识别多个if或条件?,javascript,Javascript,以下工作: key = ['_id', 'something', 'joe', 'latitude', 'longitude'] 让我们假设我们循环通过键: if(key != 'longitude') { // to ahead and execute if key is NOT longitude } 但是,我必须寻找三个条件,因此我尝试了以下方法: if(key != '_id' || key != 'latitude' || key != 'longitude') { //

以下工作:

key = ['_id', 'something', 'joe', 'latitude', 'longitude']
让我们假设我们循环通过键:

if(key != 'longitude') {
// to ahead and execute if key is NOT longitude }
但是,我必须寻找三个条件,因此我尝试了以下方法:

    if(key != '_id' || key != 'latitude' || key != 'longitude') {
// I don't want you to execute if you're '_id', 'latitude' or 'longitude'
    }
第二个未被识别。它允许执行_id、纬度和经度。我做错了什么?

你需要,因为所有的条件都必须是
真的

if (key != '_id' && key != 'latitude' && key != 'longitude') {
一个较短的方法是


所以我建议你去看看逻辑门,因为它们有助于编程中的布尔逻辑。。 回答你的问题。 在第二种情况下,假设值为_idkey=“纬度”将返回true。
正如Nina所说,你必须使用and(&&)和not(| |)或(| |),这样当所有3种情况都满足时if语句是真的

如果
key
是“id”,那么它就不是“纬度”,也不是“经度”。为了可读性,我将使用
includes()
方法
const keys=[''id',latitude',longitude']if(keys.include(key))//actions
更新了问题,这是因为不相等。
if (!['_id', 'latitude', 'longitude'].includes(key)) {