I denne veiledningen vil du lære om JavaScript-nummer ved hjelp av eksempler.
I JavaScript er tall primitive datatyper. For eksempel,
const a = 3; const b = 3.13;
I motsetning til i noen andre programmeringsspråk, trenger du ikke å spesifisere for heltall eller flytende verdier ved hjelp av int , float , etc.
Du kan bruke eksponentiell notasjon e for å inkludere for store eller for små tall. For eksempel,
const a1 = 5e9; console.log(a1); //5000000000 const a2 = 5e-5; console.log(a2); // 0.00005
Tall kan også betegnes med heksadesimaltegning. For eksempel,
const a = 0xff; console.log(a); // 255 const b = 0x00 ; console.log(b); // 0
+ Operatør med tall
Når +
brukes med tall, brukes det til å legge til tallene. For eksempel,
const a = 4 + 9; console.log(a); // 13
Når +
brukes med tall og strenger, brukes den til å sammenkoble dem. For eksempel,
const a = '4' + 9; console.log(a); // 49
Når en numerisk streng brukes med andre numeriske operasjoner, konverteres den numeriske strengen til et tall. For eksempel,
const a = '4' - 2; console.log(a); // 2 const a = '4' / 2; console.log(a); // 2 const a = '4' * 2; console.log(a); // 8
JavaScript NaN
I JavaScript er NaN
(Not a Number) et nøkkelord som indikerer at verdien ikke er et tall.
Å utføre aritmetiske operasjoner (unntatt +
) til numerisk verdi med streng resulterer i NaN
. For eksempel,
const a = 4 - 'hello'; console.log(a); // NaN
Den innebygde funksjonen isNaN()
kan brukes til å finne ut om en verdi er et tall. For eksempel,
const a = isNaN(9); console.log(a); // false const a = isNaN(4 - 'hello'); console.log(a); // true
Når typeof
operatøren brukes til NaN
verdi, gir den et tallutgang. For eksempel,
const a = 4 - 'hello'; console.log(a); // NaN console.log(typeof a); // "number"
JavaScript Infinity
Når JavaScript er beregnet som overstiger det største (eller minste) mulige antallet, returneres Infinity
(eller -Infinity
) i JavaScript . For eksempel,
const a = 2 / 0; console.log(a); // Infinity const a = -2 / 0; console.log(a); // -Infinity
JavaScript BigInt
I JavaScript kan talltypen kun representere tall mindre enn (2 53 - 1) og mer enn - (2 53 - 1) . Men hvis du trenger å bruke et større antall enn det, kan du bruke datatypen BigInt.
Et BigInt-nummer opprettes ved å legge til n på slutten av et heltall. For eksempel,
// BigInt value const value = 900719925124740998n; // Adding two big integers const value1 = value + 1n; console.log(value1); // returns "900719925124740999n"
Merk: BigInt ble introdusert i den nyere versjonen av JavaScript og støttes ikke av mange nettlesere. Besøk JavaScript for støtte for JavaScript for å lære mer.
JavaScript-numre lagres i 64-bit
I JavaScript lagres tall i 64-bitersformat IEEE-754, også kjent som "floating point numbers" med dobbel presisjon.
Tallene er lagret i 64 bits (tallet er lagret i 0 til 51 bit posisjoner, eksponenten i 52 til 62 bit posisjoner og tegnet i 63 bit posisjon).
Tall | Eksponent | Skilt |
---|---|---|
52 bits (0 - 51) | 11 bits (52- 62) | 1 bit (63) |
Presisjonsproblemer
Operasjoner på flytende tall gir noen uventede resultater. For eksempel,
const a = 0.1 + 0.2; console.log(a); // 0.30000000000000004
Resultatet skal være 0,3 i stedet for 0,30000000000000004 . Denne feilen oppstår fordi i JavaScript lagres tall i binær form for å representere desimaltegn internt. Og desimaltall kan ikke vises nøyaktig i binær form.
For å løse problemet ovenfor, kan du gjøre noe slikt:
const a = (0.1 * 10 + 0.2 * 10) / 10; console.log(a); // 0.3
Du kan også bruke toFixed()
metoden.
const a = 0.1 + 0.2; console.log(a.toFixed(2)); // 0.30
toFixed(2)
avrunder desimaltallet til to desimalverdier.
const a = 9999999999999999 console.log(a); // 10000000000000000
Merk : Heltall er nøyaktige opptil 15 sifre.
Antall objekter
Du kan også opprette tall ved hjelp av new
nøkkelordet. For eksempel,
const a = 45; // creating a number object const b = new Number(45); console.log(a); // 45 console.log(b); // 45 console.log(typeof a); // "number" console.log(typeof b); // "object"
Merk : Det anbefales å unngå å bruke nummerobjekter. Bruk av tallobjekter bremser programmet.
JavaScript-nummermetoder
Her er en liste over innebygde tallmetoder i JavaScript.
Metode | Beskrivelse |
---|---|
isNaN () | bestemmer om den passerte verdien er NaN |
isFinite () | avgjør om den passerte verdien er et endelig tall |
isInteger () | avgjør om den passerte verdien er et helt tall |
isSafeInteger () | avgjør om den passerte verdien er et sikkert heltall |
parseFloat (streng) | konverterer den numeriske flytende strengen til flytende nummer |
parseInt (streng, (radix)) | konverterer den numeriske strengen til heltall |
toExponential (fractionDigits) | returns a string value for a number in exponential notation |
toFixed(digits) | returns a string value for a number in fixed-point notation |
toPrecision() | returns a string value for a number to a specified precision |
toString((radix)) | returns a string value in a specified radix(base) |
valueof() | returns the numbers value |
toLocaleString() | returns a string with a language sensitive representation of a number |
For example,
// check if a is integer const a = 12; console.log(Number.isInteger(a)); // true // check if b is NaN const b = NaN; console.log(Number.isNaN(b)); // true // display upto two decimal point const d = 5.1234; console.log(d.toFixed(2)); // 5.12
JavaScript Number Properties
Here is a list of Number properties in JavaScript.
Property | Description |
---|---|
EPSILON | returns the smallest interval between two representable numbers |
MAX_SAFE_INTEGER | returns the maximum safe integer |
MAX_VALUE | returns the largest possible value |
MIN_SAFE_INTEGER | returns the minimum safe integer |
MIN_VALUE | returns the smallest possible value |
NaN | represents 'Not-a-Number' value |
NEGATIVE_INFINITY | represents negative infinity |
POSITIVE_INFINITY | representerer positiv uendelig |
prototype | tillater tillegg av egenskaper til Number-objekter |
For eksempel,
// largest possible value const a = Number.MAX_VALUE; console.log(a); // 1.7976931348623157e+308 // maximum safe integer const a = Number.MAX_SAFE_INTEGER; console.log(a); // 9007199254740991
JavaScript-nummer () -funksjon
Den Number()
funksjonen brukes til å konvertere forskjellige datatyper til tall. For eksempel,
const a = '23'; // string const b = true; // boolean //converting to number const result1 = Number(a); const result2 = Number(b); console.log(result1); // 23 console.log(result2); // 1
Hvis du vil lære mer om antallkonvertering, kan du gå til JavaScript Type Conversion.