😈╰•ALBERTO•╯😈 un linguaggio (interpretato) come JavaScript, a differenza di altri linguaggi (es. compilati come il C) non necessita di specificare il tipo di dato e non ci sono separazioni specifiche ad esempio per i numeri (intero vs decimale, nel C/C++ abbiamo "int" e "float", ad esempio).
Dicevo che non è nemmeno necessario specificare il tipo di dato, vale a dire che se scrivi:
var x=1
var x='1'
nel primo caso assegna alla variabile x un numero, nel secondo caso invece una stringa di un solo carattere.
Quindi, come tipi di dati JavaScript (approfondimento su html.it) abbiamo:
- numeri:
var x=Number(-273.15)
- stringhe:
var x=String('ciao giulio')
- booleani:
var x=Boolean(1)
- null:
var x=null
- undefined:
var x=undefined
- oggetti (tipo di dato complesso, creazione di "classi" o "moduli")
Puoi anche forzare la tipizzazione, ad esempio:
var x=Number('100'); console.log(x+1)
: questo codice interpreta inizialmente 100 come stringa di caratteri, poi la converte in numero intero e infatti x+1 stampa come risultato 101
var x=String(100); console.log(x+1)
: questo codice invece interpreta il numero 100 come numero da convertire in stringa di caratteri, quindi x+1 fornisce come risultato 1001, analogo quindi a console.log(x+"1")
.