JavaScript-numero (esimerkkejä)

Tässä opetusohjelmassa opit JavaScript-numerosta esimerkkien avulla.

JavaScriptissä numerot ovat primitiivisiä tietotyyppejä. Esimerkiksi,

 const a = 3; const b = 3.13;

Toisin kuin joissakin muissa ohjelmointikielissä, sinun ei tarvitse erikseen ilmoittaa kokonaisluku- tai kelluvia arvoja käyttämällä int , float jne.

Voit käyttää eksponenttimerkintää e lisätäksesi liian suuria tai liian pieniä lukuja. Esimerkiksi,

 const a1 = 5e9; console.log(a1); //5000000000 const a2 = 5e-5; console.log(a2); // 0.00005

Numerot voidaan merkitä myös heksadesimaalimuodossa. Esimerkiksi,

 const a = 0xff; console.log(a); // 255 const b = 0x00 ; console.log(b); // 0

+ Operaattori numeroilla

Kun +sitä käytetään numeroiden kanssa, sitä käytetään numeroiden lisäämiseen. Esimerkiksi,

 const a = 4 + 9; console.log(a); // 13

Kun +sitä käytetään numeroiden ja merkkijonojen kanssa, sitä käytetään niiden ketjutukseen. Esimerkiksi,

 const a = '4' + 9; console.log(a); // 49

Kun numeerista merkkijonoa käytetään muiden numeeristen operaatioiden kanssa, numeerinen merkkijono muunnetaan luvuksi. Esimerkiksi,

 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

JavaScriptissä NaN(Not a Number) on avainsana, joka osoittaa, että arvo ei ole numero.

Suoritetaan aritmeettisia operaatioita (paitsi +) numeeriseen arvoon merkkijonolla NaN. Esimerkiksi,

 const a = 4 - 'hello'; console.log(a); // NaN

Sisäänrakennettua toimintoa isNaN()voidaan käyttää selvittämään, onko arvo luku. Esimerkiksi,

 const a = isNaN(9); console.log(a); // false const a = isNaN(4 - 'hello'); console.log(a); // true

Kun typeofoperaattoria käytetään NaNarvoon, se antaa numerolähdön. Esimerkiksi,

 const a = 4 - 'hello'; console.log(a); // NaN console.log(typeof a); // "number"

JavaScript Infinity

Kun JavaScript suoritetaan, kun laskenta ylittää suurimman (tai pienimmän) mahdollisen määrän, Infinity (tai -Infinity) palautetaan. Esimerkiksi,

 const a = 2 / 0; console.log(a); // Infinity const a = -2 / 0; console.log(a); // -Infinity

JavaScript BigInt

JavaScriptissä Numerotyyppi voi edustaa vain alle (2 53 - 1) ja yli - (2 53 - 1) olevia lukuja . Jos sinun on kuitenkin käytettävä suurempaa numeroa, voit käyttää BigInt-tietotyyppiä.

BigInt-numero luodaan liittämällä n kokonaisluvun loppuun. Esimerkiksi,

 // BigInt value const value = 900719925124740998n; // Adding two big integers const value1 = value + 1n; console.log(value1); // returns "900719925124740999n"

Huomaa: BigInt esiteltiin JavaScriptin uudemmassa versiossa, ja monet selaimet eivät tue sitä. Käy JavaScript BigInt -tuessa saadaksesi lisätietoja.

JavaScript-numerot tallennetaan 64-bittisiksi

JavaScriptissä numerot tallennetaan 64-bittisessä muodossa IEEE-754, joka tunnetaan myös nimellä "kaksitarkat liukuluvut".

Numerot tallennetaan 64 bittiä (numero tallennetaan 0-51-bittisiin paikkoihin, eksponentti 52-62-bittisiin sijainteihin ja merkki 63-bittiseen asemaan).

Numerot Eksponentti Merkki
52 bittiä (0-51) 11 bittiä (52-62) 1 bitti (63)

Tarkkuusongelmat

Toiminnot liukulukuihin johtavat odottamattomiin tuloksiin. Esimerkiksi,

 const a = 0.1 + 0.2; console.log(a); // 0.30000000000000004

Tuloksen tulisi olla 0,3 eikä 0,3000000000000000004 . Tämä virhe tapahtuu, koska JavaScriptissä numerot tallennetaan binaarimuodossa edustamaan desimaalilukuja sisäisesti. Ja desimaalilukuja ei voida esittää tarkasti binaarimuodossa.

Voit ratkaista yllä olevan ongelman seuraavasti:

 const a = (0.1 * 10 + 0.2 * 10) / 10; console.log(a); // 0.3

Voit käyttää myös toFixed()menetelmää.

 const a = 0.1 + 0.2; console.log(a.toFixed(2)); // 0.30

toFixed(2) pyöristää desimaaliluvun kahteen desimaalilukuun.

 const a = 9999999999999999 console.log(a); // 10000000000000000

Huomaa : Kokonaisluvut ovat tarkkoja enintään 15 numeroa.

Numeroobjektit

Voit myös luoda numeroita newavainsanalla. Esimerkiksi,

 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"

Huomautus : On suositeltavaa välttää lukuobjektien käyttöä. Numeroobjektien käyttö hidastaa ohjelmaa.

JavaScript-numeromenetelmät

Tässä on luettelo sisäänrakennetuista lukumenetelmistä JavaScriptissä.

Menetelmä Kuvaus
isNaN () määrittää, onko välitetty arvo NaN
isFinite () määrittää, onko välitetty arvo äärellinen luku
isInteger () määrittää, onko välitetty arvo kokonaisluku
isSafeInteger () määrittää, onko välitetty arvo turvallinen kokonaisluku
parseFloat (merkkijono) muuntaa numeerisen kelluvan merkkijonon liukuluvuksi
parseInt (merkkijono, (radix)) muuntaa numeerisen merkkijonon kokonaisluvuksi
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 edustaa positiivista ääretöntä
prototyyppi sallii ominaisuuksien lisäämisen Numero-objekteihin

Esimerkiksi,

 // 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-numero () -toiminto

Number()Toimintoa käytetään muuntaa eri tietotyyppejä numeroita. Esimerkiksi,

 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

Jos haluat lisätietoja numeronmuunnoksesta, käy JavaScript-tyypin muunnoksessa.

Mielenkiintoisia artikkeleita...