Lavorando con basi numeriche diverse, come quella binaria o esadecimale, la conversione tra numeri e stringhe è un compito comune. In 4D 21, i caratteri String e Num sono stati migliorati per rendere più potenti queste conversioni.
Convertire un numero in una stringa in qualsiasi base
Il comando String supporta ora la conversione da un numero intero a una stringa in qualsiasi base, da 2 a 36. Ciò semplifica la rappresentazione di valori in binario, ottale, decimale, esadecimale e oltre.
var $result := String(6; 2)
// "110" — binary representation of 6
$result := String(254; 16)
// "fe" — hexadecimal representation of 254
$result := String(14256; 36)
// "b00" — base 36 representation of 14256
Convertire una stringa in un intero
Il comando Num supporta ora anche il parsing di stringhe in qualsiasi base da 2 a 36. Ciò è particolarmente utile quando si lavora con input esadecimali o binari.
var $result:=Num("110";2)
// $result = 6
$result:=Num("fe";16)
// $result = 254
$result:=Num("b00";36)
// $result = 14256
Nota: poiché Num utilizza lo storico algoritmo 4D quando non viene specificata la base e l’algoritmo ECMAScript quando viene fornita una base, si potrebbero notare differenze con numeri molto grandi come 1e+25 e oltre.
Conclusione
Che si tratti di creare uno strumento per sviluppatori, di eseguire il debug di protocolli o semplicemente di visualizzare i numeri in un formato più leggibile, questi miglioramenti offrono maggiore flessibilità e controllo. Ora è possibile passare facilmente da una base numerica all’altra, convalidare l’input dell’utente o serializzare i dati in formati come esadecimale o binario in modo nativo in 4D.
Al momento non è possibile lasciare commenti su questo post.