V programiranju so podatkovni tipi pomemben koncept. Da bi lahko delovali s spremenljivkami, je pomembno vedeti nekaj o vrsti. Spremenljivke v JavaScript-u lahko vsebujejo katero koli vrsto podatkov. Vsi programski jeziki imajo vgrajene podatkovne strukture, vendar se te pogosto razlikujejo od jezika do jezika. V tej vadnici bomo poskušali navesti vgrajene podatkovne strukture, ki so na voljo v JavaScript, in katere lastnosti imajo. Te je mogoče uporabiti za gradnjo drugih podatkovnih struktur. Vsi tipi razen objekta definirajo nespremenljive vrednosti, predstavljene neposredno na najnižji ravni jezika. Vrednosti teh vrst imenujemo primitivne vrednosti. Vse primitivne tipe, razen null, je mogoče preizkusiti z operatorjem typeof, (typeof null vrne objekt, zato je treba uporabiti === null za preizkus ničelnosti).
JavaScript ima osem podatkovnih tipov:
Podatkovni tip objekta lahko vsebuje:
Vsi primitivni tipi, razen null in undefined, imajo svoje ustrezne tipe ovoja objektov, ki zagotavljajo uporabne metode za delo s primitivnimi vrednostmi. Na primer objekt Number ponuja metode, kot je toExponential(). Ko se do lastnosti dostopa na primitivnih vrednosti, JavaScript samodejno ovije vrednost v ustrezen predmet ovoja in namesto tega dostopa do lastnosti objekta. Vendar pa dostop do lastnosti na null ali undefined vrže izjemo TypeError, zaradi česar je potrebna uvedba neobveznega operatorja veriženja. JavaScript ima dinamične vrste podatkov, kar pomeni, da se lahko ista spremenljivka uporablja za shranjevanje različnih tipov podatkov.