V tej vadnici boste s pomočjo primerov spoznali številko JavaScript.
V JavaScript so številke primitivni podatkovni tipi. Na primer
const a = 3; const b = 3.13;
V nasprotju z nekaterimi drugimi programskimi jeziki vam ni treba posebej deklarirati celih ali plavajočih vrednosti z uporabo int , float itd.
Z eksponentnim zapisom e lahko vključite prevelika ali premajhna števila. Na primer
const a1 = 5e9; console.log(a1); //5000000000 const a2 = 5e-5; console.log(a2); // 0.00005
Številke lahko označimo tudi v šestnajstiškem zapisu. Na primer
const a = 0xff; console.log(a); // 255 const b = 0x00 ; console.log(b); // 0
+ Operater s številkami
Ko +
se uporablja s številkami, se uporablja za dodajanje številk. Na primer
const a = 4 + 9; console.log(a); // 13
Kadar +
se uporablja s števili in nizi, se uporablja za njihovo združevanje. Na primer
const a = '4' + 9; console.log(a); // 49
Ko se številski niz uporablja z drugimi številskimi operacijami, se številski niz pretvori v število. Na primer
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
V JavaScript je NaN
(Not Number) ključna beseda, ki označuje, da vrednost ni število.
Izvajanje aritmetičnih operacij (razen +
) s številsko vrednostjo z nizom v NaN
. Na primer
const a = 4 - 'hello'; console.log(a); // NaN
Z vgrajeno funkcijo isNaN()
lahko ugotovite, ali je vrednost številka. Na primer
const a = isNaN(9); console.log(a); // false const a = isNaN(4 - 'hello'); console.log(a); // true
Ko je typeof
operator uporabljen za NaN
vrednost, poda izhodno številko. Na primer
const a = 4 - 'hello'; console.log(a); // NaN console.log(typeof a); // "number"
JavaScript Infinity
V JavaScript se pri izračunu, ki presega največje (ali najmanjše) možno število, vrne Infinity
(ali -Infinity
). Na primer
const a = 2 / 0; console.log(a); // Infinity const a = -2 / 0; console.log(a); // -Infinity
JavaScript BigInt
V JavaScript lahko vrsta števil predstavlja samo števila, manjša od (2 53 - 1) in več kot - (2 53 - 1) . Če pa morate uporabiti večje število od tega, lahko uporabite podatkovni tip BigInt.
Številka BigInt se ustvari z dodajanjem n na konec celotnega števila. Na primer
// BigInt value const value = 900719925124740998n; // Adding two big integers const value1 = value + 1n; console.log(value1); // returns "900719925124740999n"
Opomba: BigInt je bil predstavljen v novejši različici JavaScripta in ga mnogi brskalniki ne podpirajo. Obiščite podporo za BigInt za JavaScript, če želite izvedeti več.
Številke JavaScript so shranjene v 64-bitni različici
V JavaScript so številke shranjene v 64-bitni obliki IEEE-754, znani tudi kot "dvojno natančne številke s plavajočo vejico".
Številke so shranjene v 64 bitov (število je shranjeno v 0 do 51 bitnih položajih, eksponent v 52 do 62 bitnih položajih in znak v 63 bitnem položaju).
Številke | Eksponent | Podpiši |
---|---|---|
52 bitov (0 - 51) | 11 bitov (52–62) | 1 bit (63) |
Težave z natančnostjo
Operacije s števili s plavajočo vejico povzročijo nekaj nepričakovanih rezultatov. Na primer
const a = 0.1 + 0.2; console.log(a); // 0.30000000000000004
Rezultat mora biti 0,3 namesto 0,30000000000000004 . Do te napake pride, ker so v JavaScript številke shranjene v binarni obliki, da predstavljajo decimalne številke znotraj. In decimalnih števil ni mogoče natančno predstaviti v binarni obliki.
Za rešitev zgornje težave lahko naredite nekaj takega:
const a = (0.1 * 10 + 0.2 * 10) / 10; console.log(a); // 0.3
Uporabite lahko tudi toFixed()
metodo.
const a = 0.1 + 0.2; console.log(a.toFixed(2)); // 0.30
toFixed(2)
zaokroži decimalno število na dve decimalni vrednosti.
const a = 9999999999999999 console.log(a); // 10000000000000000
Opomba : Cela števila so natančna do 15 števk.
Številčni predmeti
Številke lahko ustvarite tudi s new
ključno besedo. Na primer
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"
Opomba : Priporočljivo je, da se izogibate uporabi številčnih predmetov. Uporaba številskih predmetov upočasni program.
Metode številk JavaScript
Tu je seznam vgrajenih načinov števila v JavaScript.
Metoda | Opis |
---|---|
isNaN () | določa, ali je posredovana vrednost NaN |
isFinite () | določa, ali je posredovana vrednost končno število |
isInteger () | določa, ali je posredovana vrednost celo število |
isSafeInteger () | določa, ali je posredovana vrednost varno celo število |
parseFloat (niz) | pretvori številski plavajoči niz v število s plavajočo vejico |
parseInt (niz, (radix)) | pretvori številski niz v celo število |
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 | predstavlja pozitivno neskončnost |
prototip | omogoča dodajanje lastnosti objektom Number |
Na primer
// 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
Funkcija JavaScript številka ()
Number()
Funkcija se uporablja za pretvorbo različnih vrst podatkov na številke. Na primer
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
Če želite izvedeti več o pretvorbi številk, obiščite Pretvorba vrste JavaScript.