JavaScript-nummermetoder


Indholdsfortegnelse

    Vis indholdsfortegnelse


JavaScript-nummermetoder

Disse talmetoder kan bruges på alle JavaScript-numre:

toString()

Returnerer et tal som en streng

toExponential()

Returnerer et tal skrevet i eksponentiel notation

toFixed()

Returnerer et tal skrevet med et antal decimaler

toPrecision()

Returnerer et tal skrevet med en specificeret længde

ValueOf()

Returnerer et tal som et tal


toString()-metoden

Metoden toString() returnerer et tal som en streng.

Alle talmetoder kan bruges på enhver type tal (bogstaver, variabler eller udtryk):

Eksempel

let x = 123;
x.toString();
(123).toString();
(100 + 23).toString();

Prøv det selv →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Number Methods</h2>

<p>The toString() method converts a number to a string.</p>

<p id="demo"></p>

<script>
let x = 123;
document.getElementById("demo").innerHTML =
  x.toString() + "<br>" +
   (123).toString() + "<br>" +
   (100 + 23).toString();
</script>

</body>
</html>

toExponential()-metoden

toExponential() returnerer en streng med et tal afrundet og skrevet ved hjælp af eksponentiel notation.

En parameter definerer antallet af tegn bag decimaltegnet:

Eksempel

let x = 9.656;
x.toExponential(2);
x.toExponential(4);
x.toExponential(6);

Parameteren er valgfri. Hvis du ikke angiver det, vil JavaScript ikke afrunde tallet.



toFixed()-metoden

toFixed() returnerer en streng med tallet skrevet med et angivet antal decimaler:

Eksempel

let x = 9.656;
x.toFixed(0);
x.toFixed(2);
x.toFixed(4);
x.toFixed(6);

toFixed(2) er perfekt til at arbejde med penge.


toPrecision()-metoden

toPrecision() returnerer en streng med et tal skrevet med en specificeret længde:

Eksempel

let x = 9.656;
x.toPrecision();
x.toPrecision(2);
x.toPrecision(4);
x.toPrecision(6);

Prøv det selv →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Number Methods</h2>

<p>The toPrecision() method returns a string, with a number written with a specified length:</p>

<p id="demo"></p>

<script>
let x = 9.656;
document.getElementById("demo").innerHTML = 
  x.toPrecision() + "<br>" +
  x.toPrecision(2) + "<br>" +
  x.toPrecision(4) + "<br>" +
  x.toPrecision(6);  
</script>

</body>
</html>

valueOf()-metoden

valueOf() returnerer et tal som et tal.

Eksempel

let x = 123;
x.valueOf();
(123).valueOf();
(100 + 23).valueOf();

Prøv det selv →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Number Methods</h2>

<p>The valueOf() method returns a number as a number:</p>

<p id="demo"></p>

<script>
let x = 123;

document.getElementById("demo").innerHTML = 
  x.valueOf() + "<br>" +
  (123).valueOf() + "<br>" +
  (100 + 23).valueOf();
</script>

</body>
</html>

I JavaScript kan et tal være en primitiv værdi (typeof=tal) eller en objekt (typeof=objekt).

Metoden valueOf() bruges internt i JavaScript til at konvertere tal protesterer mod primitive værdier.

Der er ingen grund til at bruge det i din kode.

Alle JavaScript-datatyper har en valueOf() og en toString()-metode.


Konvertering af variable til tal

Der er 3 JavaScript-metoder, der kan bruges for at konvertere en variabel til et tal:

Number()

Returnerer et tal konverteret fra dets argument.

parseFloat()

Parser dets argument og returnerer et flydende kommatal

parseInt()

Parser dets argument og returnerer et helt tal

Ovenstående metoder er ikke tal metoder. De er globale JavaScript-metoder.


Number()-metoden

Metoden Number() kan bruges til at konvertere JavaScript-variabler til tal:

Eksempel

Number(true);
Number(false);
Number("10");
Number("  10");
Number("10  ");
Number(" 10  ");
Number("10.33");
Number("10,33");
Number("10 33");
Number("John");

Prøv det selv →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Global Methods</h2>

<p>The Number() method converts variables to numbers:</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = 
  Number(true) + "<br>" +
  Number(false) + "<br>" +
  Number("10") + "<br>" + 
  Number("  10") + "<br>" +
  Number("10  ") + "<br>" +
  Number(" 10  ") + "<br>" +
  Number("10.33") + "<br>" + 
  Number("10,33") + "<br>" +
  Number("10 33") + "<br>" +
  Number("John");
</script>

</body>
</html>


Hvis tallet ikke kan konverteres, returneres NaN (Not a Number).


Number()-metoden brugt på datoer

Number() kan også konvertere en dato til et tal.

Eksempel

Number(new Date("1970-01-01"))

Prøv det selv →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Global Methods</h2>

<p>The Number() method can convert a date to a number:</p>

<p id="demo"></p>

<script>
let x = new Date("1970-01-01");
document.getElementById("demo").innerHTML = Number(x); 
</script>

</body>
</html>


Bemærk

Metoden Date() returnerer antallet af millisekunder siden 1.1.1970.

Antallet af millisekunder mellem 1970-01-02 og 1970-01-01 er 86400000:

Eksempel

Number(new Date("1970-01-02"))

Prøv det selv →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Global Methods</h2>

<p>The Number() method can convert a date to a number:</p>

<p id="demo"></p>

<script>
let x = new Date("1970-01-02");
document.getElementById("demo").innerHTML = Number(x); 
</script>

</body>
</html>


Eksempel

Number(new Date("2017-09-30"))

Prøv det selv →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Global Methods</h2>

<p>The Number() method can convert a date to a number:</p>

<p id="demo"></p>

<script>
let x = new Date("2017-09-30");
document.getElementById("demo").innerHTML = Number(x); 
</script>

</body>
</html>



ParseInt()-metoden

parseInt() analyserer en streng og returnerer et helt tal. Mellemrum er tilladt. Kun det første tal returneres:

Eksempel

parseInt("-10");
parseInt("-10.33");
parseInt("10");
parseInt("10.33");
parseInt("10 20 30");
parseInt("10 years");
parseInt("years 10");

Hvis tallet ikke kan konverteres, returneres NaN (Not a Number).


ParseFloat()-metoden

parseFloat() analyserer en streng og returnerer et tal. Mellemrum er tilladt. Kun det første tal returneres:

Eksempel

parseFloat("10");
parseFloat("10.33");
parseFloat("10 20 30");
parseFloat("10 years");
parseFloat("years 10");

Hvis tallet ikke kan konverteres, returneres NaN (Not a Number).


Nummerobjektmetoder

Disse objektmetoder hører til Number-objektet:

Number.isInteger()

Returnerer sand, hvis argumentet er et heltal

Number.isSafeInteger()

Returnerer sand, hvis argumentet er et sikkert heltal

Number.parseFloat()

Konverterer en streng til et tal

Number.parseInt()

Konverterer en streng til et helt tal

Talmetoder kan ikke bruges på variabler

Ovenstående talmetoder tilhører JavaScript Nummerobjektet.

Disse metoder kan kun tilgås som Number.isInteger().

Brug af X.isInteger() hvor X er en variabel, vil resultere i en fejl:

TypeError X.isInteger er ikke en funktion.


Number.isInteger()-metoden

Metoden Number.isInteger() returnerer true, hvis argumentet er et heltal.

Eksempel

Number.isInteger(10);
Number.isInteger(10.5);

Prøv det selv →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Numbers</h1>
<h2>The isInteger() Method</h2>

<p>The isInteger() method returns true if the argument is an integer.</p>
<p>Otherwise it returns false.</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
Number.isInteger(10) + "<br>" + Number.isInteger(10.5);
</script>

</body>
</html>

Number.isSafeInteger()-metoden

Et sikkert heltal er et heltal, der nøjagtigt kan repræsenteres som et dobbelt præcisionstal.

Metoden Number.isSafeInteger() returnerer true, hvis argumentet er et sikkert heltal.

Eksempel

Number.isSafeInteger(10);
Number.isSafeInteger(12345678901234567890);

Prøv det selv →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Numbers</h1>
<h2>The isSafeInteger() Method</h2>

<p>The isSafeInteger() method returns true if the argument is a safe integer.</p>
<p>Otherwise it returns false.</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
Number.isSafeInteger(10) + "<br>" + Number.isSafeInteger(12345678901234567890);
</script>

</body>
</html>

Sikre heltal er alle heltal fra -(253 - 1) til +(253 - 1).
Dette er sikkert: 9007199254740991. Dette er ikke sikkert: 9007199254740992.


Number.parseFloat()-metoden

Number.parseFloat() analyserer en streng og returnerer et tal.

Pladser er tilladt. Kun det første tal returneres:

Eksempel

Number.parseFloat("10");
Number.parseFloat("10.33");
Number.parseFloat("10 20 30");
Number.parseFloat("10 years");
Number.parseFloat("years 10");

Hvis tallet ikke kan konverteres, returneres NaN (Not a Number).

Bemærk

Number metoderne Number.parseInt() og Number.parseFloat()

er de samme som

Globale metoder parseInt() og parseFloat().

Formålet er modularisering af globaler (for at gøre det nemmere at bruge den samme JavaScript-kode uden for browseren).


Number.parseInt()-metoden

Number.parseInt() analyserer en streng og returnerer et helt tal.

Pladser er tilladt. Kun det første tal returneres:

Eksempel

Number.parseInt("-10");
Number.parseInt("-10.33");
Number.parseInt("10");
Number.parseInt("10.33");
Number.parseInt("10 20 30");
Number.parseInt("10 years");
Number.parseInt("years 10");

Hvis tallet ikke kan konverteres, returneres NaN (Not a Number).

Komplet JavaScript-nummerreference

For en komplet nummerreference, besøg vores:

Komplet JavaScript-nummerreference.

Referencen indeholder beskrivelser og eksempler på alle talegenskaber og metoder.