En datatype definerer typen og oppførselen til data – den forteller kompilatoren eller tolken hvordan en programmerer har til hensikt å bruke et stykke data. De fleste programmeringsspråk støtter grunnleggende datatyper som tall, boolsk, streng, etc.

JavaScript støtter åtte datatyper: Number, BigInt, Boolean, String, Null, Undefined, Symbol og Object. I denne artikkelen lærer du om alle de åtte JavaScript-datatypene og hvordan du bruker dem.

JavaScript-datatyper

Datatyper i JavaScript kan grovt klassifiseres i to kategorier: Primitive datatyper og ikke-primitive datatyper. Et objekt er en ikke-primitiv eller kompleks datatype, og resten er primitive datatyper.

JavaScript er et dynamisk skrevet språk, noe som betyr at variabeltyper kontrolleres under kjøring. Den samme variabelen kan inneholde verdier av forskjellige typer når som helst.

For eksempel:

// x er en streng
la x = "Hei, verden";
// x er et tall
x = 100;
// x er nå en boolsk
x = sant;

Hvis du vil finne gjeldende datatype for en variabel, bruk type operatør.

// x er en streng
la x = "Hei, verden";
console.log (type (x));
// x er et tall
x = 100;
console.log (type (x));
// x er nå en boolsk
x = sant;
console.log (type (x));

Produksjon:

streng
Nummer
boolsk

1. Nummer Datatype i JavaScript

Talldatatypen i JavaScript bruker IEEE-754 format for å representere både heltall og flyttall. Du kan utføre mange operasjoner på tall i JavaScript som addisjon, subtraksjon, divisjon, multiplikasjon og så videre. For å utføre mer komplekse operasjoner kan du bruke den innebygde Matematikkobjekt.

Noen eksempler for å lage tall i JavaScript:

// Bruker bokstavelig erklæring
la n1 = 100;
la n2 = 456,234;
// Bruke Number()-konstruktøren
la n3 = Tall (100);
// Konvertering til heltall
la n4 = Number.parseInt("456.234");
// Konvertering til flytende
la n5 = Number.parseFloat("456.234");
la n6 = Number.parseFloat("1.13e3");
// Unær konvertering til tall
la n7 = +"345";
console.log (n1);
console.log (n2);
console.log (n3);
console.log (n4);
console.log (n5);
console.log (n6);
console.log (n7);

Produksjon:

100
456.234
100
456
456.234
1130
345

Heltall

Følgende setning lager en variabel som inneholder et heltall:

la x = 21;

Hvis du vil lage oktale (base 8) literaler, må du bruke 0o prefiks med rekkefølgen av oktale sifre (siffer fra 0 til 7).

la x = 0o53;
console.log (x);

Produksjon:

43

På samme måte, hvis du vil lage heksadesimale (grunnlag 16) bokstaver, bruk 0x prefiks med sekvensen av heksadesimale sifre (0 til 9, og A til F).

la x = 0x53;
console.log (x);

Produksjon:

83

Flytende tall

Følgende setning lager en variabel som inneholder et flyttall:

la x = 324,56;

Du kan bruke e-notasjon til å representere veldig store eller veldig små tall.

la x = 1,13e6;
console.log (x);

Produksjon:

1130000

JavaScript gir også andre spesielle numeriske verdier som tilhører Nummer datatype – NaN, Infinity og -Infinity.

  • NaN: NaN står for Ikke et nummer som betyr et ugyldig nummer. Hvis du for eksempel deler en streng og et tall, vil resultatet være NaN.
    console.log("MakeUseOf"/10);
    Produksjon:
    NaN
    Interessant nok er NaN ikke lik noe, inkludert seg selv.
    console.log (NaN == NaN);
    console.log (NaN == ("MakeUseOf"/10));
    console.log (NaN NaN);
    Produksjon:
    falsk
    falsk
    falsk
    Dessuten, hvis et matematisk uttrykk et sted inneholder NaN, er resultatet alltid NaN.
  • Infinity og -Infinity: evighet og -Evighet representerer det matematiske og -∞ hhv.

2. BigInt-datatype i JavaScript

BigInt er en primitiv datatype i JavaScript som kan representere heltall med vilkårlig presisjon. Siden talldatatypen ikke kan representere verdier større enn (2⁵³-1) eller verdier mindre enn -(2⁵³-1), brukes BigInt i slike tilfeller for å representere svært store eller små tall.

BigInt-tall brukes sjelden. Men hvis du virkelig trenger å representere store tall, f.eks. for kryptografi, beregning av faktoren til stor tall, som representerer solens masse, mikrosekund-presisjon tidsstempler og så videre, BigInt er det du vil ha å bruke.

Du kan opprette en BigInt-verdi ved å legge til n til slutten av et heltall eller ved å bruke konstruktøren.

la stor1 = 78649264972634817648747234872634876243862348763467547n;
la stor2 = BigInt("78649264972634817648747234872634876243862348763467547");
console.log (stor1);
console.log (stor2);

Produksjon:

78649264972634817648747234872634876243862348763467547n
78649264972634817648747234872634876243862348763467547n

BigInt-datatypen er et relativt nytt tillegg til språket og støttes for øyeblikket av nesten alle nettlesere bortsett fra Internet Explorer.

3. Boolsk datatype i JavaScript

Den boolske datatypen kan ha to verdier: ekte og falsk. Boolske verdier er et resultat av logiske sammenligninger.

la x1 = sant;
console.log (x1);
la x2 = !sann;
console.log (x2);
la x3 = !!sant;
console.log (x3);
la x4 = (false && sant);
console.log (x4);
la x5 = (falsk || sant);
console.log (x5);
la x6 = (2 == "2");
console.log (x6);
la x7 = (2 "2");
console.log (x7);
la x8 = (null udefinert);
console.log (x8);
la x9 = (0 == "");
console.log (x9);
la x10 = (100 > 12);
console.log (x10);

Produksjon:

ekte
falsk
ekte
falsk
ekte
ekte
falsk
falsk
ekte
ekte

Du kan konvertere en verdi av en hvilken som helst annen datatype til en boolsk datatype ved å bruke boolsk() funksjon.

// Strenger
console.log (Boolean(''));
console.log (Boolean('abc'));
console.log (Boolean('123'));
// Tall
console.log (boolsk (0));
console.log (boolsk (1));
console.log (boolsk(-1));
console.log (boolsk (NaN));
console.log (boolsk (uendelig));
// Andre
console.log (Boolean([1, 2, 3]));
console.log (boolsk (udefinert));
console.log (boolsk (null));

Produksjon:

falsk
ekte
ekte
falsk
ekte
ekte
falsk
ekte
ekte
falsk
falsk

4. Strengdatatype i JavaScript

En streng er en sekvens med null eller flere tegn. Strenger i JavaScript er uforanderlige og brukes hovedsakelig til å representere tekstdata. Indekseringen av strenger starter fra 0, dvs. det første elementet er ved indeks 0, det andre ved 1, og så videre.

Strenger må være omgitt av anførselstegn. Du kan bruke hvilken som helst av de tre typene anførselstegn for å lage en streng: Enkelte anførselstegn, Doble anførselstegn eller Backticks.

Enkelte og doble anførselstegn gjør praktisk talt det samme, men en streng som starter med et dobbelt anførselstegn må slutte med et dobbelt anførselstegn. Den samme regelen gjelder også for enkelt sitat.

la str1 = "Hei";
la str2 = 'Hei';
let str3 = "Hvordan har du det?";
// Bruke \ for å unnslippe det enkle anførselstegn (')
let str4 = 'Hvordan har du det?';

Backticks er maler og gir noe utvidet funksjonalitet. Du kan bygge inn variabler, uttrykk og til og med funksjonskall i strengen.

// Innebygging av variabel i en streng
la x = "Hei";
let str1 = `${x}, hvordan har du det?`;
console.log (str1);
// Innebygging av uttrykk i en streng
let str2 = `Summen av 20 + 30 er: ${20 + 30}`;
console.log (str2);
// Innebygging av funksjonskall i en streng
funksjon beregneSum (a, b) {
returner a + b;
}
let str3 = `Summen av 20 + 30 er: ${calculateSum (20, 30)}`;
console.log (str3);

Produksjon:

Hei, hvordan har du det?
Summen av 20 + 30 er: 50
Summen av 20 + 30 er: 50

JavaScript gir også flere strengmetoder å manipulere strenger.

5. Null datatype i JavaScript

Nulldatatypen har bare én verdi: null. Det representerer det tilsiktede fraværet av noen objektverdi.

la n = null;

Mange programmerere blir forvirret mellom null og udefinert. Det er vanskelig å forstå forskjellen mellom null og udefinert i JavaScript.

6. Udefinert datatype i JavaScript

Den udefinerte typen er en spesiell type som betyr at "verdien ikke er tildelt". Når du erklærer en variabel, men ikke initialiserer den, tildeles en udefinert verdi til variabelen.

la x;
console.log (type (x));

Produksjon:

udefinert

Du kan eksplisitt tilordne udefinert til en variabel, men det anbefales sterkt å unngå det.

I slekt: JavaScript-settmetoder du bør mestre i dag

7. Symbol Datatype i JavaScript

Et symbol er en unik og uforanderlig primitiv verdi. Den brukes hovedsakelig til å lage unike identifikatorer for objekter.

Du kan lage et symbol ved å bruke Symbol() funksjon. Den godtar også en valgfri beskrivelse (navn), men kun for feilsøkingsformål.

la sym1 = Symbol();
la sym2 = Symbol("data");

De Symbol() funksjonen skaper en ny unik verdi hver gang den kalles opp, selv om du lager symboler med samme beskrivelse, vil verdiene være annerledes.

console.log (Symbol() == Symbol());
console.log (Symbol("data") == Symbol("data"));

Produksjon:

falsk
falsk

I slekt: JavaScript-kartmetoder du bør mestre i dag

8. Objektdatatype i JavaScript

I JavaScript er objekter samlinger av nøkkelverdi-par, der nøkkelen er en streng og verdi kan være en hvilken som helst datatype.

Du kan opprette et tomt objekt i JavaScript ved å bruke "objektkonstruktør"-syntaksen (nytt objekt()) eller "objektlitteral"-syntaksen (krøllete klammeparenteser {...}).

la obj1 = nytt objekt();
la obj2 = {};

Hvert objekt inneholder en valgfri liste over egenskaper, der en egenskap er et nøkkel: verdipar. Du kan få tilgang til verdiene fra objektet ved å bruke punktnotasjon eller array-lignende notasjon (firkantede parenteser).

la obj = {
"key1": "verdi1",
"key2": "value2"
}
console.log (obj.key1);
console.log (obj["nøkkel2"]);

Produksjon:

verdi1
verdi2

Hvordan fungerer JavaScript?

JavaScript er et av de mest populære programmeringsspråkene på nettet i dag. Du kan bruke JavaScript til å lage nettsider, nettapplikasjoner, serverapplikasjoner, spill, mobilapper osv. Det er nok å si at du kan gjøre nesten alt du kan tenke deg med JavaScript.

Men vet du hvordan JavaScript fungerer under panseret?

Hva er JavaScript og hvordan fungerer det?

Hvis du lærer webutvikling, er det her det du trenger å vite om JavaScript og hvordan det fungerer med HTML og CSS.

Les Neste

DelekvitringE-post
Relaterte temaer
  • Programmering
  • JavaScript
  • Programmering
  • Kodetips
  • Webutvikling
Om forfatteren
Yuvraj Chandra (72 artikler publisert)

Yuvraj er en informatikkstudent ved University of Delhi, India. Han er lidenskapelig opptatt av Full Stack Web Development. Når han ikke skriver, utforsker han dybden av forskjellige teknologier.

Mer fra Yuvraj Chandra

Abonner på vårt nyhetsbrev

Bli med i vårt nyhetsbrev for tekniske tips, anmeldelser, gratis e-bøker og eksklusive tilbud!

Klikk her for å abonnere