JavaScript-nummermetoder


Innehållsförteckning

    Visa innehållsförteckning


JavaScript-nummermetoder

Dessa nummermetoder kan användas på alla JavaScript-nummer:

toString()

Returnerar ett tal som en sträng

toExponential()

Returnerar ett tal skrivet i exponentiell notation

toFixed()

Returnerar ett tal skrivet med ett antal decimaler

toPrecision()

Returnerar ett tal skrivet med en angiven längd

ValueOf()

Returnerar ett tal som ett tal


Metoden toString()

Metoden toString() returnerar ett tal som en sträng.

Alla talmetoder kan användas på alla typer av tal (bokstavar, variabler eller uttryck):

Exempel

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

Prova själv →

<!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>

Metoden toExponential()

toExponential() returnerar en sträng, med ett tal avrundat och skrivet med exponentiell notation.

En parameter definierar antalet tecken bakom decimaltecknet:

Exempel

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

Parametern är valfri. Om du inte anger det kommer JavaScript inte att runda av numret.



Metoden toFixed()

toFixed() returnerar en sträng med numret skrivet med ett angivet antal decimaler:

Exempel

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

toFixed(2) är perfekt för att arbeta med pengar.


toPrecision()-metoden

toPrecision() returnerar en sträng, med ett tal skrivet med en specificerad längd:

Exempel

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

Prova själv →

<!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>

Metoden valueOf()

valueOf() returnerar ett tal som ett tal.

Exempel

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

Prova själv →

<!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 ett tal vara ett primitivt värde (typeof=nummer) eller ett objekt (typeof=objekt).

Metoden valueOf() används internt i JavaScript för att konvertera Number invänder mot primitiva värden.

Det finns ingen anledning att använda det i din kod.

Alla JavaScript-datatyper har en valueOf() och en toString()-metod.


Konvertera variabler till tal

Det finns 3 JavaScript-metoder som kan användas för att konvertera en variabel till ett tal:

Number()

Returnerar ett tal konverterat från dess argument.

parseFloat()

Analyserar dess argument och returnerar ett flyttal

parseInt()

Analyserar dess argument och returnerar ett heltal

Metoderna ovan är inte siffermetoder. De är globala JavaScript-metoder.


Number()-metoden

Metoden Number() kan användas för att konvertera JavaScript-variabler till tal:

Exempel

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

Prova själv →

<!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>


Om talet inte kan konverteras returneras NaN (Inte ett nummer).


Number()-metoden som används på datum

Number() kan också konvertera ett datum till ett tal.

Exempel

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

Prova själv →

<!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>


Notera

Metoden Date() returnerar antalet millisekunder sedan 1.1.1970.

Antalet millisekunder mellan 1970-01-02 och 1970-01-01 är 86400000:

Exempel

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

Prova själv →

<!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>


Exempel

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

Prova själv →

<!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>



Metoden parseInt()

parseInt() analyserar en sträng och returnerar ett heltal. Utrymmen är tillåten. Endast det första numret returneras:

Exempel

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

Om talet inte kan konverteras returneras NaN (Inte ett nummer).


Metoden parseFloat()

parseFloat() analyserar en sträng och returnerar ett tal. Utrymmen är tillåten. Endast det första numret returneras:

Exempel

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

Om talet inte kan konverteras returneras NaN (Inte ett nummer).


Nummerobjektmetoder

Dessa objektmetoder tillhör Number-objektet:

Number.isInteger()

Returnerar sant om argumentet är ett heltal

Number.isSafeInteger()

Returnerar sant om argumentet är ett säkert heltal

Number.parseFloat()

Konverterar en sträng till ett tal

Number.parseInt()

Konverterar en sträng till ett heltal

Talmetoder kan inte användas på variabler

Siffermetoderna ovan tillhör JavaScript-nummerobjektet.

Dessa metoder kan endast nås som Number.isInteger().

Användning av X.isInteger() där X är en variabel, kommer att resultera i ett fel:

TypeError X.isInteger är inte en funktion.


Number.isInteger()-metoden

Metoden Number.isInteger() returnerar true om argumentet är ett heltal.

Exempel

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

Prova själv →

<!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

Ett säkert heltal är ett heltal som exakt kan representeras som ett dubbelt precisionstal.

Metoden Number.isSafeInteger() returnerar true om argumentet är ett säkert heltal.

Exempel

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

Prova själv →

<!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>

Säkra heltal är alla heltal från -(253 - 1) till +(253 - 1).
Detta är säkert: 9007199254740991. Det här är inte säkert: 9007199254740992.


Number.parseFloat()-metoden

Number.parseFloat() analyserar en sträng och returnerar ett tal.

Utrymmen är tillåtna. Endast det första numret returneras:

Exempel

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

Om talet inte kan konverteras returneras NaN (Inte ett nummer).

Notera

Number-metoderna Number.parseInt() och Number.parseFloat()

är samma som

Globala metoder parseInt() och parseFloat().

Syftet är modularisering av globaler (för att göra det lättare att använda samma JavaScript-kod utanför webbläsaren).


Number.parseInt()-metoden

Number.parseInt() analyserar en sträng och returnerar ett heltal.

Utrymmen är tillåtna. Endast det första numret returneras:

Exempel

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");

Om talet inte kan konverteras returneras NaN (Inte ett nummer).

Fyll i JavaScript-nummerreferens

För en fullständig nummerreferens, besök vår:

Fyll i JavaScript-nummerreferens.

Referensen innehåller beskrivningar och exempel på alla nummeregenskaper och metoder.