

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# JSON.TOGGLE
<a name="json-toggle"></a>

Alterna valori booleani vero e falso nel percorso.

Sintassi

```
JSON.TOGGLE <key> [path] 
```
+ key (obbligatorio) — Una chiave Valkey o Redis OSS di tipo documento JSON.
+ path (facoltativo) – Un percorso JSON. Se non è fornito, per impostazione predefinita viene ripristinata la radice.

**Valori restituiti**

Se il percorso è una sintassi avanzata:
+ Array di numeri interi (0 - falso, 1 - vero) che rappresentano valore booleano risultante in ogni percorso.
+ Se un valore non è un valore booleano, il valore restituito corrispondente è null.
+ `NONEXISTENT` se la chiave del documento non esiste.

Se il percorso è una sintassi limitata:
+ Stringa ("true"/"false") che rappresenta il valore booleano risultante.
+ `NONEXISTENT` se la chiave del documento non esiste.
+ Errore `WRONGTYPE` se il valore nel percorso non è un valore booleano.

**Examples** (Esempi)

 Sintassi avanzata del percorso:

```
127.0.0.1:6379> JSON.SET k1 . '{"a":true, "b":false, "c":1, "d":null, "e":"foo", "f":[], "g":{}}'
OK
127.0.0.1:6379> JSON.TOGGLE k1 $.*
1) (integer) 0
2) (integer) 1
3) (nil)
4) (nil)
5) (nil)
6) (nil)
7) (nil)
127.0.0.1:6379> JSON.TOGGLE k1 $.*
1) (integer) 1
2) (integer) 0
3) (nil)
4) (nil)
5) (nil)
6) (nil)
7) (nil)
```

 Sintassi limitata del percorso:

```
127.0.0.1:6379> JSON.SET k1 . true
OK
127.0.0.1:6379> JSON.TOGGLE k1
"false"
127.0.0.1:6379> JSON.TOGGLE k1
"true"

127.0.0.1:6379> JSON.SET k2 . '{"isAvailable": false}'
OK
127.0.0.1:6379> JSON.TOGGLE k2 .isAvailable
"true"
127.0.0.1:6379> JSON.TOGGLE k2 .isAvailable
"false"
```