首页 > 解决方案 > 为什么无法识别多个 if 或条件?

问题描述

以下作品:

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、纬度、经度。我究竟做错了什么?

标签: javascript

解决方案


您需要逻辑 AND&&,因为所有条件都必须是true

if (key != '_id' && key != 'latitude' && key != 'longitude') {

更短的方法是Array#includes.

if (!['_id', 'latitude', 'longitude'].includes(key)) {

推荐阅读