Informazioni generali
Ninox è un linguaggio tipizzato e precompilato. Significa che i tipi di dati trattati dal linguaggio sono noti in anticipo, a differenza di altri linguaggi come JavaScript, che possono gestire variabili senza conoscerne il tipo.
Uno dei grandi vantaggi di Ninox è che il codice prodotto è particolarmente affidabile: i malfunzionamenti sono rarissimi.
Per informazione, lo script Ninox viene compilato in JavaScript prima di essere eseguito.
Codice annidato e codice lineare
Ogni funzione o istruzione restituisce un valore che può essere passato direttamente come parametro a un'altra funzione o istruzione:
var a := format(now(), "DD/MM/YYYY");
È quindi possibile assegnare a una variabile un insieme di codice annidato:
var a := true;
var b := if a then "true" else "false";
È anche possibile assegnare a b il risultato di un blocco di codice lineare racchiuso tra parentesi:
var b := (
var a := true;
if a then "true" else "false" end
);
È importante tenere presente che, nel caso del codice lineare, è sempre l'ultima riga a determinare il tipo e il valore restituiti. In questo esempio b sarà uguale a 10:
var b := (
var a := true;
if a then "true" else "false" end;
10
);
Metodi
I metodi sono funzioni che accettano uno o più parametri e restituiscono un valore. Sia i parametri sia il valore restituito sono predefiniti.
Alcuni metodi ammettono più configurazioni di parametri:
date(year, month, day)
Restituisce un valore di tipo data.date(myTimeValue)
Converte in data un valore legato al tempo. Se il valore è un numero, rappresenta il tempo Unix in millisecondi.
Consultate la documentazione ufficiale di Ninox per l'elenco completo dei metodi e per la loro classificazione per categoria.
Istruzioni
var, if then else, for, switch, select where, ecc. sono istruzioni.
A differenza dei metodi, il tipo restituito dalle istruzioni dipende dal codice che contengono. Per esempio, il codice seguente restituirà un array di numeri [1, 2]:
for i in range(1,3) do
i;
end;
