

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

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

パスのブール値を true と false の間で切り替えます。

構文

```
JSON.TOGGLE <key> [path] 
```
+ キー (必須) - JSON ドキュメントタイプのキー
+ パス「オプショナル」– JSON パス。指定しない場合、デフォルトでルートになります

**戻る**

パスが拡張構文の場合:
+ 各パスの結果のブール値を表す整数 (0 - false、1 - true) の配列。
+ 値がブール値でない場合は、対応する戻り値は null です。
+ ドキュメントキーが存在しない場合は、`NONEXISTENT` エラーになります。

パスが制限構文の場合:
+ 結果のブール値を表す文字列 (「true」/「false」)。
+ ドキュメントキーが存在しない場合は、`NONEXISTENT` エラーになります。
+ パスの値がブール値でない場合は、`WRONGTYPE` エラーになります。

**例**

 拡張パス構文:

```
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)
```

 制限パス構文:

```
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"
```