En datatype definerer typen og adfærden af ​​data - den fortæller compileren eller fortolkeren, hvordan en programmør har til hensigt at bruge et stykke data. De fleste programmeringssprog understøtter grundlæggende datatyper som tal, boolean, streng osv.

JavaScript understøtter otte datatyper: Number, BigInt, Boolean, String, Null, Undefined, Symbol og Object. I denne artikel lærer du om alle otte JavaScript-datatyper, og hvordan du bruger dem.

JavaScript-datatyper

Datatyper i JavaScript kan bredt klassificeres 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 sprog, hvilket betyder, at variabeltyper kontrolleres under kørsel. Den samme variabel kan til enhver tid indeholde værdier af forskellige typer.

For eksempel:

// x er en streng
let x = "Hej, verden";
// x er et tal
x = 100;
// x er nu en boolean
x = sand;

Hvis du vil finde den aktuelle datatype for en variabel, skal du bruge type operatør.

instagram viewer
// x er en streng
let x = "Hej, verden";
console.log (typeaf (x));
// x er et tal
x = 100;
console.log (typeaf (x));
// x er nu en boolean
x = sand;
console.log (typeaf (x));

Produktion:

snor
nummer
boolesk

1. Nummer Datatype i JavaScript

Nummerdatatypen i JavaScript bruger IEEE-754 format til at repræsentere både heltal og flydende tal. Du kan udføre mange operationer på tal i JavaScript som addition, subtraktion, division, multiplikation og så videre. For at udføre mere komplekse operationer kan du bruge den indbyggede Matematik objekt.

Nogle eksempler på at oprette tal i JavaScript:

// Bruger bogstavelig erklæring
lad n1 = 100;
lad n2 = 456,234;
// Brug af Number()-konstruktøren
lad n3 = Tal (100);
// Konvertering til heltal
lad n4 = Number.parseInt("456.234");
// Konvertering til flydende
lad n5 = Number.parseFloat("456.234");
lad n6 = Number.parseFloat("1.13e3");
// Unær konvertering til tal
lad n7 = +"345";
console.log (n1);
console.log (n2);
console.log (n3);
console.log (n4);
console.log (n5);
console.log (n6);
console.log (n7);

Produktion:

100
456.234
100
456
456.234
1130
345

Heltal

Følgende sætning opretter en variabel med et heltal:

lad x = 21;

Hvis du vil oprette oktale (base 8) literaler, skal du bruge 0o præfiks med rækkefølgen af ​​oktale cifre (cifre fra 0 til 7).

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

Produktion:

43

På samme måde, hvis du vil oprette hexadecimale (base 16) literaler, skal du bruge 0x præfiks med rækkefølgen af ​​hexadecimale cifre (0 til 9 og A til F).

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

Produktion:

83

Floating-Point-tal

Følgende sætning opretter en variabel med et flydende kommatal:

lad x = 324,56;

Du kan bruge e-notation til at repræsentere meget store eller meget små tal.

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

Produktion:

1130000

JavaScript giver også andre specielle numeriske værdier, der hører til nummer datatype - NaN, Infinity og -Infinity.

  • NaN: NaN står for Ikke et nummer hvilket betyder et ugyldigt tal. Hvis du for eksempel deler en streng og et tal, bliver resultatet NaN.
    console.log("MakeUseOf"/10);
    Produktion:
    NaN
    Interessant nok er NaN ikke lig med noget, inklusive sig selv.
    console.log (NaN == NaN);
    console.log (NaN == ("MakeUseOf"/10));
    console.log (NaN NaN);
    Produktion:
    falsk
    falsk
    falsk
    Desuden, hvis et matematisk udtryk et eller andet sted indeholder NaN, er resultatet altid NaN.
  • Infinity og -Infinity: Uendelighed og -Uendelighed repræsenterer det matematiske og -∞ henholdsvis.

2. BigInt-datatype i JavaScript

BigInt er en primitiv datatype i JavaScript, der kan repræsentere heltal med vilkårlig præcision. Da taldatatypen ikke kan repræsentere værdier større end (2⁵³-1) eller værdier mindre end -(2⁵³-1), bruges BigInt i sådanne tilfælde til at repræsentere meget store eller små tal.

BigInt-numre bruges sjældent. Men hvis du virkelig skal repræsentere store tal, f.eks. til kryptografi, beregning af factorial af store tal, der repræsenterer solens masse, mikrosekund-præcisions tidsstempler og så videre, BigInt er, hvad du vil have at bruge.

Du kan oprette en BigInt-værdi ved at tilføje n til slutningen af ​​et heltal eller ved at bruge konstruktøren.

lad stor1 = 78649264972634817648747234872634876243862348763467547n;
lad big2 = BigInt("78649264972634817648747234872634876243862348763467547");
console.log (big1);
console.log (big2);

Produktion:

78649264972634817648747234872634876243862348763467547n
78649264972634817648747234872634876243862348763467547n

BigInt-datatypen er en relativt ny tilføjelse til sproget og understøttes i øjeblikket af næsten alle browsere undtagen Internet Explorer.

3. Boolesk datatype i JavaScript

Den boolske datatype kan have to værdier: sand og falsk. Booleske værdier er resultatet af logiske sammenligninger.

lad x1 = sand;
console.log (x1);
lad x2 = !sand;
console.log (x2);
lad x3 = !!sandt;
console.log (x3);
lad x4 = (falsk && sand);
console.log (x4);
lad x5 = (falsk || sand);
console.log (x5);
lad x6 = (2 == "2");
console.log (x6);
lad x7 = (2 "2");
console.log (x7);
lad x8 = (nul udefineret);
console.log (x8);
lad x9 = (0 == "");
console.log (x9);
lad x10 = (100 > 12);
console.log (x10);

Produktion:

sand
falsk
sand
falsk
sand
sand
falsk
falsk
sand
sand

Du kan konvertere en værdi af enhver anden datatype til en boolsk datatype ved hjælp af Boolean() fungere.

// Strenge
console.log (Boolean(''));
console.log (Boolean('abc'));
console.log (Boolean('123'));
// Tal
console.log (Boolesk (0));
console.log (Boolesk (1));
console.log (Boolesk(-1));
console.log (Boolesk (NaN));
console.log (Boolesk (uendelig));
// Andre
console.log (Boolean([1, 2, 3]));
console.log (boolesk (udefineret));
console.log (Boolesk (nul));

Produktion:

falsk
sand
sand
falsk
sand
sand
falsk
sand
sand
falsk
falsk

4. Strengdatatype i JavaScript

En streng er en sekvens af nul eller flere tegn. Strenge i JavaScript er uforanderlige og bruges hovedsageligt til at repræsentere tekstdata. Indekseringen af ​​strenge starter fra 0, dvs. det første element er ved indeks 0, det andet ved 1, og så videre.

Strenge skal være omgivet af anførselstegn. Du kan bruge en hvilken som helst af de tre typer anførselstegn til at oprette en streng: Enkelte anførselstegn, Dobbelte anførselstegn eller Backticks.

Enkelte og dobbelte anførselstegn gør praktisk talt det samme, men en streng, der starter med et dobbelt anførselstegn, skal slutte med et dobbelt anførselstegn. Den samme regel gælder også for det enkelte citat.

lad str1 = "Hej";
lad str2 = 'Hej';
let str3 = "Hvordan har du det?";
// Brug \ for at undslippe det enkelte citat (')
let str4 = 'Hvordan har du det?';

Backticks er skabeloner og giver en vis udvidet funktionalitet. Du kan integrere variabler, udtryk og endda funktionskald i strengen.

// Indlejring af variabel i en streng
lad x = "Hej";
let str1 = `${x}, hvordan har du det?`;
console.log (str1);
// Indlejring af udtryk i en streng
let str2 = `Summen af ​​20 + 30 er: ${20 + 30}`;
console.log (str2);
// Indlejring af funktionskald i en streng
funktion beregneSum (a, b) {
returnere a + b;
}
let str3 = `Summen af ​​20 + 30 er: ${calculateSum (20, 30)}`;
console.log (str3);

Produktion:

Hej, hvordan har du det?
Summen af ​​20 + 30 er: 50
Summen af ​​20 + 30 er: 50

JavaScript giver også flere strengmetoder at manipulere strenge.

5. Nul datatype i JavaScript

Null-datatypen har kun én værdi: nul. Det repræsenterer det bevidste fravær af en objektværdi.

lad n = nul;

Mange programmører bliver forvirrede mellem null og undefined. Det er svært at forstå forskellen mellem null og udefineret i JavaScript.

6. Udefineret datatype i JavaScript

Den udefinerede type er en speciel type, der betyder "værdi er ikke tildelt". Når du erklærer en variabel, men ikke initialiserer den, tildeles en udefineret værdi til variablen.

lad x;
console.log (typeaf (x));

Produktion:

udefineret

Du kan eksplicit tildele udefineret til en variabel, men det anbefales stærkt at undgå det.

Relaterede: JavaScript sæt metoder, du bør mestre i dag

7. Symbol Datatype i JavaScript

Et symbol er en unik og uforanderlig primitiv værdi. Det bruges hovedsageligt til at skabe unikke identifikatorer for objekter.

Du kan oprette et symbol ved hjælp af Symbol() fungere. Den accepterer også en valgfri beskrivelse (navn), men kun til fejlfindingsformål.

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

Det Symbol() funktion opretter en ny unik værdi hver gang den kaldes, selvom du opretter symboler med samme beskrivelse, ville værdierne være anderledes.

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

Produktion:

falsk
falsk

Relaterede: JavaScript-kortmetoder, du bør mestre i dag

8. Objektdatatype i JavaScript

I JavaScript er objekter samlinger af nøgleværdi-par, hvor nøglen er en streng, og værdien kan være en hvilken som helst datatype.

Du kan oprette et tomt objekt i JavaScript ved hjælp af "objektkonstruktør"-syntaksen (nyt objekt()) eller "objekt bogstavelig" syntaks (krøllede klammeparenteser {...}).

lad obj1 = nyt objekt();
lad obj2 = {};

Hvert objekt indeholder en valgfri liste over egenskaber, hvor en egenskab er et nøgle: værdipar. Du kan få adgang til værdierne fra objektet ved hjælp af punktnotation eller matrixlignende notation (kantede parenteser).

lad obj = {
"key1": "værdi1",
"key2": "værdi2"
}
console.log (obj.key1);
console.log (obj["nøgle2"]);

Produktion:

værdi1
værdi2

Hvordan virker JavaScript?

JavaScript er et af de mest populære programmeringssprog på nettet i dag. Du kan bruge JavaScript til at oprette websteder, webapplikationer, serverapplikationer, spil, mobilapps osv. Det er nok at sige, du kan gøre næsten alt, hvad du kan finde på med JavaScript.

Men ved du, hvordan JavaScript fungerer under motorhjelmen?

Hvad er JavaScript, og hvordan virker det?

Hvis du lærer webudvikling, er her, hvad du behøver at vide om JavaScript, og hvordan det fungerer med HTML og CSS.

Læs Næste

DelTweetE-mail
Relaterede emner
  • Programmering
  • JavaScript
  • Programmering
  • Kodningstip
  • Web-udvikling
Om forfatteren
Yuvraj Chandra (72 artikler udgivet)

Yuvraj er en bachelorstuderende i datalogi ved University of Delhi, Indien. Han er passioneret omkring Full Stack Web Development. Når han ikke skriver, udforsker han dybden af ​​forskellige teknologier.

Mere fra Yuvraj Chandra

Abonner på vores nyhedsbrev

Tilmeld dig vores nyhedsbrev for tekniske tips, anmeldelser, gratis e-bøger og eksklusive tilbud!

Klik her for at abonnere