

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Utilice operadores lógicos en los documentos TOE de AWS de componentes
<a name="toe-logical-operators"></a>

Puede utilizar los siguientes operadores lógicos para añadir o modificar expresiones condicionales en el documento componente. TOE de AWS evalúa las expresiones condicionales en el orden en que se especifican las condiciones. Para obtener más información sobre los operadores de comparación de los documentos de componentes, consulte [Utilice operadores de comparación en los documentos TOE de AWS de componentes](toe-comparison-operators.md).

**y**  
Con el operador `and`, puede evaluar dos o más comparaciones como una sola expresión. La expresión se evalúa como `true` cuando se cumplen todas las condiciones de la lista. De lo contrario, la expresión se evalúa como `false`.  
**Ejemplos:**  
En el siguiente ejemplo se realizan dos comparaciones: una cadena y un número. Ambas comparaciones son verdaderas, por lo que la expresión se evalúa como verdadera.

```
and:
  - stringEquals: 'test_string'
    value: 'test_string'
  - numberEquals: 1
    value: 1
```
En el siguiente ejemplo también se realizan dos comparaciones. La primera comparación es falsa, momento en el que se detiene la evaluación y se omite la segunda comparación. La expresión se evalúa como `false`.  

```
and:
  - stringEquals: 'test_string'
    value: 'Hello world!'
  - numberEquals: 1
    value: 1
```

**o bien**  
Con el operador `or`, puede evaluar dos o más comparaciones como una sola expresión. La expresión se evalúa como `true` cuando una de las comparaciones especificadas es verdadera. Si ninguna de las comparaciones especificadas se evalúa como `true`, la expresión se evalúa como `false`.  
**Ejemplos:**  
En el siguiente ejemplo se realizan dos comparaciones: una cadena y un número. La primera comparación es verdadera, por lo que la expresión se evalúa como `true` y se omite la segunda comparación.

```
or:
  - stringEquals: 'test_string'
    value: 'test_string'
  - numberEquals: 1
    value: 3
```
En el siguiente ejemplo también se realizan dos comparaciones. La primera comparación es falsa y la evaluación continúa. La segunda comparación es verdadera, por lo que la expresión se evalúa como `true`.  

```
or:
  - stringEquals: 'test_string'
    value: 'Hello world!'
  - numberEquals: 1
    value: 1
```
En el último ejemplo, ambas comparaciones son falsas, por lo que la expresión se evalúa como `false`.  

```
or:
  - stringEquals: 'test_string'
    value: 'Hello world!'
  - numberEquals: 1
    value: 3
```

**not**  
Con el operador `not`, puede anular una sola comparación. La expresión se evalúa como `true` si la comparación es falsa. Si la comparación es verdadera, la expresión se evalúa como `false`.  
**Ejemplos:**  
En el siguiente ejemplo, se realiza una comparación de cadenas. La comparación es falsa, por lo que la expresión se evalúa como `true`.

```
not:
  - stringEquals: 'test_string'
    value: 'Hello world!'
```
En el siguiente ejemplo también se realiza una comparación de cadenas. La comparación es verdadera, por lo que la expresión se evalúa como `false`.  

```
not:
  - stringEquals: 'test_string'
    value: 'test_string'
```