Indbyggede funktioner i JavaScript

Indbyggede funktioner i JavaScript

Denne artikel forklarer de indbyggede funktioner i JavaScript.

YouTube Video

Indbyggede funktioner i JavaScript

JavaScript tilbyder en række indbyggede funktioner, som er kraftfulde værktøjer til effektiv skabelse af programmer. Her vil vi i detaljer forklare de typiske indbyggede funktioner i JavaScript. Ved at lære funktionernes roller, anvendelser og forbehold vil du kunne anvende JavaScript mere effektivt.

Hvad er indbyggede funktioner?

Indbyggede funktioner er funktioner, der leveres som standard i JavaScript. Disse funktioner er designet til at udføre specifikke opgaver præcist. Programmerere behøver ikke implementere dem uafhængigt, hvilket forbedrer kodens læsbarhed og vedligeholdelse.

Repræsentative indbyggede funktioner

parseInt()

1// Convert string to integer
2console.log(parseInt("42"));      // Output: 42
3console.log(parseInt("42px"));    // Output: 42
4console.log(parseInt("0xF", 16)); // Output: 15
5console.log(parseInt("0xF"));     // Output: 15
6console.log(parseInt("px42"));    // Output: NaN
  • parseInt() er en funktion, der analyserer en streng og konverterer den til et heltal. Hvis starten af strengen indeholder et tal, returneres denne del som et heltal. En valgfri base (radix) kan også angives.

  • Hvis starten af strengen ikke indeholder et tal, returnerer den NaN (Not-a-Number). Desuden, hvis en radix ikke er specificeret, er standarden decimal, men hvis strengen starter med "0x", tolkes den som hexadecimal.

parseFloat()

1// Convert string to float
2console.log(parseFloat("3.14"));      // Output: 3.14
3console.log(parseFloat("3.14abc"));   // Output: 3.14
4console.log(parseFloat("42"));        // Output: 42
  • parseFloat() analyserer en streng og konverterer den til et flydende punkt-tal. Den bruges, når der arbejdes med tal, der inkluderer et decimaltal.

  • Ligesom parseInt() returnerer den NaN, hvis starten af strengen ikke er et tal. Den er kendetegnet ved korrekt at analysere ikke kun heltalsdelen, men også decimaldelen.

isNaN()

1console.log(isNaN(NaN));         // Output: true
2console.log(isNaN(42));          // Output: false
3console.log(isNaN("hello"));     // Output: true
  • isNaN() bestemmer, om en given værdi er NaN. NaN (Not-a-Number) repræsenterer en ugyldig værdi som et tal.

  • isNaN() er også gyldig for andre datatyper end tal og returnerer for eksempel true, hvis en streng ikke kan konverteres til et tal.

Number()

1console.log(Number("42"));        // Output: 42
2console.log(Number("3.14"));      // Output: 3.14
3console.log(Number("0xff"));      // Output: 255
4console.log(Number("abc"));       // Output: NaN
  • Number() er en funktion, der konverterer strenge eller andre datatyper til et tal. Den returnerer NaN, hvis en ikke-numerisk streng gives.

  • I modsætning til parseInt() eller parseFloat() betragter Number() det som en ugyldig konvertering og returnerer NaN, hvis strengen indeholder ikke-numeriske tegn.

String()

1console.log(String(42));           // Output: "42"
2console.log(String(3.14));         // Output: "3.14"
3console.log(String(true));         // Output: "true"
4console.log(String(null));         // Output: "null"
5console.log(String(undefined));    // Output: "undefined"
  • String() er en funktion, der konverterer tal og andre datatyper til strenge. String(42) returnerer strengen "42".
  • Hvis værdien, der skal konverteres, er null eller undefined, returnerer den henholdsvis strengene "null" eller "undefined".
  • Det er nyttigt til at håndtere forskellige datatyper, såsom tal, boolske værdier eller objekter, ved at konvertere dem til strenge.

Array

1const arr = Array(3);
2console.log(arr); // Output: [ <3 empty items> ]
3
4const arr2 = Array(1, 2, 3);
5console.log(arr2); // Output: [1, 2, 3]
  • Array er en konstruktør, der bruges til at oprette nye arrays.
  • Hvis der er ét argument, behandles det som længden af array'et, og et tomt array oprettes.
  • Hvis der er flere argumenter, oprettes et array med disse værdier som dets elementer.

Array.isArray()

1console.log(Array.isArray([1, 2, 3])); // Output: true
2console.log(Array.isArray("not an array")); // Output: false
  • Array.isArray() er en metode, der bestemmer, om argumentet er et array.
  • Den returnerer true, hvis argumentet er et array, og false ellers.

isFinite()

1console.log(isFinite(42));         // Output: true
2console.log(isFinite(Infinity));   // Output: false
3console.log(isFinite(NaN));        // Output: false
  • isFinite() bestemmer, om en given værdi er endelig. Returnerer true for endelige tal og false ellers (som for uendelighed eller NaN).

  • I JavaScript repræsenterer Infinity og -Infinity uendelighed og er af typen number, men isFinite() betragter uendelighed som en ugyldig værdi.

eval()

1let expression = "2 + 2";
2console.log(eval(expression));    // Output: 4
3
4console.log(eval("var x = 10; x * 2"));  // Output: 20
  • eval() er en funktion, der evaluerer og udfører JavaScript-kode givet som en streng. Du kan udføre JavaScript-kode dynamisk.

  • eval() er meget kraftfuld, men det udgør en sikkerhedsrisiko, så det bør undgås i faktisk udvikling. Udførelse af eksternt leveret kode med eval() kan føre til utilsigtet adfærd og sikkerhedssårbarheder.

encodeURI() / decodeURI()

1let url = "https://example.com/?name=John Doe&age=25";
2let encodedUrl = encodeURI(url);
3console.log(encodedUrl);
4// Output: https://example.com/?name=John%20Doe&age=25
5
6let decodedUrl = decodeURI(encodedUrl);
7console.log(decodedUrl);
8// Output: https://example.com/?name=John Doe&age=25
  • encodeURI() er en funktion, der bruges til at kode (konvertere) tegn, der ikke kan bruges i en URL. På den anden side dekoder decodeURI() en kodet URL til dens oprindelige form.

  • Kodning er særligt vigtig, når man arbejder med specialtegn. For eksempel skal tegn som mellemrum eller & kodes for at kunne medtages korrekt i en URL, så de skal behandles korrekt med encodeURI().

setTimeout() / setInterval()

 1// Execute a function after 2 seconds
 2setTimeout(() => {
 3    console.log("This runs after 2 seconds");
 4}, 2000);
 5
 6// Execute a function every 1 second
 7let intervalId = setInterval(() => {
 8    console.log("This runs every 1 second");
 9}, 1000);
10
11// Stop the interval after 5 seconds
12setTimeout(() => {
13    clearInterval(intervalId);
14}, 5000);
  • setTimeout() er en timerfunktion, der bruges til at udføre en funktion én gang efter en specificeret tid. setInterval() udfører gentagne gange en funktion med specificerede intervaller.

  • setTimeout() og setInterval() udføres asynkront og kalder funktionen efter den specificerede tid er gået. Det er også muligt at annullere udførelser ved at bruge clearTimeout() eller clearInterval().

Sammendrag

Ved at bruge JavaScripts indbyggede funktioner kan du skrive enklere og mere effektive programmer. De funktioner, der introduceres her, er grundlæggende og nyttige i forskellige situationer. Vær sikker på at skrive faktisk kode og bekræfte dens opførsel for at uddybe din forståelse.

Lær mere komplekse processer og avanceret funktionel brug for at forbedre dine JavaScript-evner yderligere.

Du kan følge med i ovenstående artikel ved hjælp af Visual Studio Code på vores YouTube-kanal. Husk også at tjekke YouTube-kanalen.

YouTube Video