

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.

# JSON.ARRTRIM
<a name="json-arrtrim"></a>

Recorta una matriz en la ruta para que se convierta en una submatriz [inicio, fin], ambos inclusivos.
+ Si la matriz está vacía, no se hace nada y se devuelve 0.
+ Si el valor inicio es <0, trátelo como 0.
+ Si el tamaño del valor final es >= (tamaño de la matriz), trátelo como tamaño-1.
+ Si el tamaño del valor inicio >= o inicio > final, vacíe la matriz y devuelva 0.

Sintaxis

```
JSON.ARRINSERT <key> <path> <start> <end>
```
+ clave (obligatorio): clave del tipo de documento JSON
+ ruta (obligatoria): ruta JSON
+ inicio (obligatorio): índice de inicio, inclusivo.
+ final (obligatorio): índice de final, inclusivo.

**Devolución**

Si la ruta es de sintaxis mejorada:
+ Matriz de números enteros que representan la nueva longitud de la matriz en cada ruta.
+ Si un valor es una matriz vacía, su valor devuelto correspondiente es nulo.
+ Si un valor no es una matriz, su valor devuelto correspondiente es nulo.
+ Error `OUTOFBOUNDARIES` si un argumento de índice está fuera de los límites.

Si la ruta es de sintaxis restringida:
+ Entero, la nueva longitud de la matriz.
+ Es nulo si la matriz está vacía.
+ Error `WRONGTYPE` si el valor de la ruta no es una matriz.
+ Error `OUTOFBOUNDARIES` si un argumento de índice está fuera de los límites.

**Ejemplos**

 Sintaxis de la ruta mejorada:

```
127.0.0.1:6379> JSON.SET k1 . '[[], ["a"], ["a", "b"], ["a", "b", "c"]]'
OK
127.0.0.1:6379> JSON.ARRTRIM k1 $[*] 0 1
1) (integer) 0
2) (integer) 1
3) (integer) 2
4) (integer) 2
   127.0.0.1:6379> JSON.GET k1
   "[[],[\"a\"],[\"a\",\"b\"],[\"a\",\"b\"]]"
```

 Sintaxis de la ruta restringida:

```
127.0.0.1:6379> JSON.SET k1 . '{"children": ["John", "Jack", "Tom", "Bob", "Mike"]}'
OK
127.0.0.1:6379> JSON.ARRTRIM k1 .children 0 1
(integer) 2
127.0.0.1:6379> JSON.GET k1 .children
"[\"John\",\"Jack\"]"
```