Skip to main content
Quando lavori con gli array nelle azioni Code, potresti incontrare due problemi comuni:
  1. Array passati come stringhe — i dati provenienti da sistemi esterni o da passaggi precedenti arrivano come stringa invece che come un vero array
  2. Impossibile selezionare singoli elementi — puoi selezionare solo l’intero array, non i campi specifici al suo interno
Entrambi i casi si possono risolvere con un nodo Code.

Analizzare gli array dalle stringhe

Gli array vengono spesso passati tra i passaggi del workflow come stringhe o JSON invece che come array nativi. Ciò accade quando:
  • Ricezione di dati da API esterne tramite HTTP Request
  • Elaborazione dei payload dei webhook
  • Passaggio di dati tra i passaggi del workflow
Soluzione: aggiungi questo pattern all’inizio della tua azione Code:
La riga chiave typeof users === "string" ? JSON.parse(users) : users verifica se l’input è una stringa, lo analizza se necessario o lo usa direttamente se è già un array.

Estrazione di campi specifici dagli array

Un webhook potrebbe restituire un array come answers: [...], ma nei passaggi successivi del workflow puoi selezionare solo l’intero array — non i singoli elementi al suo interno. Soluzione: aggiungi un nodo Code per estrarre campi specifici e restituirli come oggetto strutturato:
Il nodo Code restituisce un oggetto strutturato invece di un array. Nei passaggi successivi, ora puoi selezionare campi individuali come answer.firstname e answer.name dal selettore delle variabili.
Vuoi iterare sull’array invece di estrarre i campi? Quando uno step di Code o Logic Function restituisce un array di primo livello, puoi passarlo direttamente a un Iterator: seleziona l’opzione Whole list dello step come input dell’Iterator, quindi fai riferimento a ciascun elemento con {{iterator.currentItem}} all’interno del ciclo. In quel caso non è necessario ristrutturare l’array in un oggetto.
Fai clic sull’icona quadrata in alto a destra dell’editor di codice per visualizzarlo a tutto schermo — utile poiché la larghezza predefinita dell’editor è limitata.