本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
JSON.TOGGLE
在路径处在 true 和 false 之间切换布尔值。
语法
JSON.TOGGLE <key> [path]
密钥(必需)— JSON 文档类型的 Redis 密钥
路径(可选)— 一个 JSON 路径。如果未提供,则默认为 root
返回值
如果路径是增强的语法:
整数数组(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"