Sintaxa JavaScript parseInt: exemple de utilizare. Semnificația analizei numerice

Ultima actualizare: 1.11.2015

Adesea este nevoie de a transforma o dată în alta. De exemplu:

Var număr1 = "46"; var number2 = "4"; var rezultat = număr1 + număr2; console.log(rezultat); //464

Ambele variabile reprezintă șiruri de caractere, sau mai precis reprezentări șiruri de caractere ale numerelor. Și în cele din urmă vom obține nu numărul 50, ci șirul 464. Dar ar fi bine dacă ar putea fi și adunate, scăzute și, în general, să funcționeze ca la numerele obișnuite.

În acest caz putem folosi operațiuni de conversie. Pentru a converti un șir într-un număr, utilizați funcția parseInt():

Var număr1 = "46"; var number2 = "4"; var rezultat = parseInt(number1) + parseInt(number2); console.log(rezultat); // 50

Pentru a converti șiruri în numere fracționale, utilizați funcția parseFloat():

Var number1 = "46,07"; var number2 = "4,98"; rezultat var = parseFloat(numar1) + parseFloat(numar2); console.log(rezultat); //51.05

În acest caz, linia poate avea conținut mixt, de exemplu, „123hello”, adică în în acest caz, Există numere, dar există și simboluri obișnuite. Dar metoda parseInt() va încerca în continuare să efectueze conversia:

Var num1 = "123bună ziua"; var num2 = parseInt(num1); console.log(num2); // 123

Dacă metoda nu reușește să convertească, returnează NaN (Not a Number), ceea ce indică faptul că șirul nu reprezintă un număr și nu poate fi convertit.

Prin utilizarea functie speciala isNaN() poate verifica dacă un șir reprezintă un număr. Dacă șirul nu este un număr, atunci funcția returnează true, dacă este un număr, atunci false:

Var num1 = "javascript"; var num2 = "22"; var rezultat = isNaN(num1); console.log(rezultat); // adevărat - num1 nu este un număr rezultat = isNaN(num2); console.log(rezultat); // false - num2 este un număr

Mai sus ne-am uitat la conversia șirurilor în numere în sistem zecimal. Cu toate acestea, putem converti numerele în orice sistem. În mod implicit, interpretul JavaScript însuși ghicește în ce sistem numeric dorim să convertim șirul (de obicei este selectat sistemul zecimal). Dar putem folosi al doilea parametru pentru a indica în mod explicit că dorim să convertim șirul într-un număr în sistem specific. De exemplu, convertirea într-un număr în sistem binar:

Var num1 = "110"; var num2 = parseInt(num1, 2); console.log(num2); // 6

Rezultatul este 6, deoarece 110 în binar este același cu 6 în zecimal.

Acum să scriem un mic program în care folosim operații cu variabile:

JavaScript var strSum = prompt("Introduceți suma depozitului", 1000); var strPercent = prompt("Enter dobândă", 10); var sum = parseInt(strSum); var procent = parseInt(strPercent); sum = sum + sum * procent / 100; alert("După ce se calculează dobânda, suma depozitului va fi: " + sum);

Funcția prompt() afișează o casetă de dialog în browser care vă cere să introduceți o valoare. Al doilea argument pentru această funcție specifică valoarea care va fi folosită ca implicită.

Cu toate acestea, funcția prompt() returnează un șir. Prin urmare, trebuie să convertim acest șir într-un număr pentru a efectua operații asupra lui.

După deschiderea paginii în browser, vom vedea o solicitare pentru a introduce suma depozitului:

Apoi va apărea un mesaj similar pentru introducerea procentului. Și la sfârșit programul va primi datele, le va converti în numere și va efectua calculul.

Funcția parseInt() parsează un argument șir și returnează un număr întreg al radicei specificate (baza în sistemele numerice matematice).

Sursa pentru acest exemplu interactiv este stocată într-un depozit GitHub. Dacă doriți să contribuiți la proiectul de exemple interactive, vă rugăm să clonați https://github.com/mdn/interactive-examples și să ne trimiteți o cerere de extragere.

Sintaxă parseInt( şir, radix); Parameters string Valoarea de analizat. Dacă argumentul șir nu este un șir, atunci acesta este convertit într-un șir (folosind operația abstractă ToString). Spațiile albe de început în argumentul șir sunt ignorate. radix Un număr întreg între 2 și 36 care reprezintă baza (baza în sistemele numerice matematice) șirului menționat mai sus. Descrierea de mai jos explică mai detaliat ce se întâmplă atunci când acest argument nu este furnizat. Valoare returnată

Un număr întreg analizat din șirul dat. Dacă primul caracter nu poate fi convertit într-un număr, NaN este returnat.

Descriere

Funcția parseInt își convertește primul argument într-un șir, îl parsează și returnează un întreg sau NaN . Dacă nu NaN , valoarea returnată va fi întregul care este primul argument luat ca număr în baza specificată. De exemplu, o rază de 10 indică convertirea dintr-un număr zecimal, 8 octal, 16 hexazecimal și așa mai departe. Pentru radicele peste 10, literele alfabetului indică cifre mai mari decât 9. De exemplu, pentru numerele hexazecimale (baza 16), sunt folosite de la A la F.

Dacă parseInt întâlnește un caracter care nu este un număr în radixul specificat, îl ignoră și toate caracterele următoare și returnează valoarea întreagă analizată până la acel punct. parseInt trunchiază numerele în valori întregi. Sunt permise spațiile de conducere și de sfârșit.

Deoarece unele numere includ caracterul e în reprezentarea șirului lor (de exemplu, 6.022e23), utilizarea parseInt pentru a trunchia valorile numerice va produce rezultate neașteptate atunci când este utilizată pe numere foarte mari sau foarte mici. parseInt nu trebuie folosit ca înlocuitor pentru Math.floor() .

Dacă radix este nedefinit sau 0 (sau absent), JavaScript presupune următoarele:

  • Dacă șirul de intrare începe cu „0x” sau „0X”, radix este 16 (hexazecimal) și restul șirului este analizat.
  • Dacă șirul de intrare începe cu „0”, radixul este opt (octal) sau 10 (zecimal). Exact care radix este aleasă depinde de implementare. ECMAScript 5 specifică faptul că se utilizează 10 (zecimal), dar nu toate browserele acceptă acest lucru încă. Din acest motiv, specificați întotdeauna o bază atunci când utilizați parseInt .
  • Dacă șirul de intrare începe cu orice altă valoare, radixul este 10 (zecimal).

Dacă primul caracter nu poate fi convertit într-un număr, parseInt returnează NaN .

În scopuri aritmetice, valoarea NaN nu este un număr în nicio bază. Puteți apelați funcția isNaN pentru a determina dacă rezultatul parseInt este NaN . Dacă NaN este transmis la operații aritmetice, rezultatele operației vor fi și NaN .

Pentru a converti numărul în literalul său șir într-o anumită bază, utilizați intValue.toString(radix) .

Exemple Folosind parseInt

15 :

ParseInt("0xF", 16); parseInt("F", 16); parseInt("17", 8); parseInt(021, 8); parseInt("015", 10); // parseInt(015, 10); va returna 15 parseInt(15.99, 10); parseInt("15,123", 10); parseInt("FXX123", 16); parseInt("1111", 2); parseInt("15 * 3", 10); parseInt("15e2", 10); parseInt("15px", 10); parseInt("12", 13);

Următoarele exemple returnează toate NaN:

ParseInt("Bună ziua", 8); // Nu este deloc un număr parseInt("546", 2); // Cifre nu sunt valabil pentru reprezentări binare

Următoarele exemple returnează toate -15:

ParseInt("-F", 16); parseInt("-0F", 16); parseInt("-0XF", 16); parseInt(-15,1, 10); parseInt("-17", 8); parseInt("-15", 10); parseInt("-1111", 2); parseInt("-15e1", 10); parseInt("-12", 13);

Următoarele exemple returnează toate 4:

ParseInt(4.7, 10); parseInt(4.7 * 1e22, 10); // Numărul foarte mare devine 4 parseInt(0.00000000000434, 10); // Numărul foarte mic devine 4

Următorul exemplu returnează 224:

ParseInt("0e0", 16);

Interpretări octale fără radix

Deși descurajate de ECMAScript 3 și interzise de ECMAScript 5, multe implementări interpretează un șir numeric care începe cu 0 inițial ca octal. Următoarele pot avea un rezultat octal sau pot avea un rezultat zecimal. Specificați întotdeauna o bază pentru a evita acest comportament nesigur.

ParseInt("0e0"); // 0 parseInt("08"); // 0, „8” nu este o cifră octală.

ECMAScript 5 elimină interpretarea octală

Specificația ECMAScript 5 a funcției parseInt nu mai permite implementărilor să trateze șirurile care încep cu un caracter 0 ca valori octale. ECMAScript 5 afirmă:

Funcția parseInt produce o valoare întreagă dictată de interpretarea conținutului argumentului șir în funcție de radixul specificat. Spațiul alb principal din șir este ignorat. Dacă radix este nedefinită sau 0, se presupune că este 10, cu excepția cazului în care numărul începe cu perechile de caractere 0x sau 0X, caz în care se presupune o bază de 16.

Acest lucru diferă de ECMAScript 3, care a fost descurajat, dar a permis interpretarea octală.

Multe implementări nu au adoptat acest comportament din 2013 și, deoarece browserele mai vechi trebuie să fie acceptate, specificați întotdeauna un radix .

O funcție de analiză mai strictă

Uneori este util să existe o modalitate mai strictă de a analiza valorile int. Expresiile regulate pot ajuta:

Var filterInt = function(value) ( ​​​​dacă (/^(-|\+)?(\d+|Infinity)$/.test(value)) return Number(valoare); return NaN; ) console.log(filterInt ("421")); // 421 console.log(filterInt("-421")); // -421 console.log(filterInt("+421")); // 421 console.log(filterInt("Infinity")); // Infinity console.log(filterInt("421e+0")); // NaN console.log(filterInt("421hop"); // NaN console.log(filterInt("hop1.61803398875")); // NaN console.log(filterInt("1.61803398875")); // NaN

Specificații Comentariu privind starea specificației
ECMAScript prima ediție (ECMA-262) Standard Definiție inițială.
ECMAScript 5.1 (ECMA-262)
Standard
ECMAScript 2015 (ediția a 6-a, ECMA-262)
Definiția „parseInt” din specificația respectivă.
Standard
Ultima versiune ECMAScript (ECMA-262)
Definiția „parseInt” din specificația respectivă.
Proiect
Compatibilitate browser

Tabelul de compatibilitate de pe această pagină este generat din date structurate. Dacă doriți să contribuiți la date, vă rugăm verifică https://github.com/mdn/browser-compat-data și trimiteți-ne o cerere de extragere.

Actualizați datele de compatibilitate pe GitHub

Desktop Mobile Server Chrome Edge Firefox Internet Explorer Opera Safari Android Webview Chrome pentru Android Edge Mobile Firefox pentru Android Opera pentru Android Safari pe iOS Samsung Internet Node.jsparseInt Analizele șirurile care conduc la zero sunt zecimale, nu octale
Chrome Suport complet DaEdge Suport complet DaSuport complet pentru Firefox 1IE Suport complet DaOpera Suport complet DaSafari Suport complet DaWebView Android Suport complet DaFirefox Android Suport complet 4Safari iOS Suport complet Danodejs Suport complet Da
Suport complet Chrome 23Edge Suport complet DaFirefox Suport complet 21IE Suport complet 9Opera Suport complet DaSafari Suport complet 6WebView Android Suport complet 4.4Chrome Android Suport complet DaEdge Mobile Suport complet DaFirefox Android Suport complet 21Opera Android Suport complet DaSafari iOS Suport complet 6Samsung Internet Android Suport complet Danodejs Suport complet Da

Recunoașterea unui număr dintr-un șir și asigurarea faptului că algoritmul folosește valoarea unei variabile al cărei tip este un număr este necesară în aproape fiecare algoritm. Metoda JavaScript parseInt rezolvă această problemă și vă permite să recunoașteți valorile numerice în sisteme populare Socoteala

Sintaxa metodei ParseInt

Metoda ia doi parametri, dintre care al doilea este opțional. Rezultatul muncii este întotdeauna un număr. Dacă primul parametru (șir) nu conține caractere de sistem numeric la început, atunci rezultatul va fi NaN.

La numere sistem hexazecimal Numerele includ literele: „a”, „b”, „c”, „d”, „e” și „f”. Semn număr octal este primul „0”, iar perechea hexazecimală principală este „0x”. Dar transformarea nu va fi întotdeauna efectuată corect, deși este indicată corect sintactic.

Funcția de analiză a numărului este o operație populară. În chiar caz simplu Metoda și promptul JavaScript parseInt vă permit să filtrați introducerea valorilor numerice corecte pentru a lua decizii rapide.

Notă. Funcția promt() introduce ceea ce vizitatorul a introdus în câmpul de introducere, și nu „rezultatul” butoanelor Ok sau Anulare. De aceea pentru a obține valori rapide puteți urmări conținutul intrărilor vizitatorului din mers și puteți accepta solutie corecta.

Folosind metoda parseInt

Programarea pe Internet are propriile sale specificități și are o influență puternică asupra ideilor de programare în general. Îmbinarea datelor mici într-un „cuvânt” mare este un parametru ale cărui principale calități sunt:

  • compactitate;
  • recunoaștere rapidă.

În multe cazuri, cei mai mari „fani” ai acestui factor în CSS și HTML au început să scrie un număr, apoi imediat, fără spațiu, unitate de măsură sau semn de punctuație. Cu alte cuvinte, compuneți secvențe simbolice stricte.

Expresiile obișnuite în general, pentru cei neinițiați în misterele parsării, sunt codul Morse, în care o mizerie de puncte și liniuțe este „împărțită” în aproape toate caracterele setului tradițional de opt biți. Mai mult, tot ceea ce nu este inclus în partea vizibilă a tabelului de simboluri poate fi scris cu ușurință cu coduri, adică numere și litere - aceasta este metoda JavaScript parseInt.

Mulți parametri ai unora Caracteristici CSS nu permiteți spații și funcționează numai atunci când sunt scrise la un standard exact.

Limbajul XML, cu toată deschiderea sa, nu permite libertăți la codificarea informațiilor parametrice.

Exemple de cerere de analiză informatii numerice Există multe care pot fi citate în afara JavaScript, dar nu contează. Sens Metoda JavaScript parseInt depinde de rolul pe care îl joacă informația numerică și de modul în care aceasta a ajuns să fie reprezentată într-o mare varietate de aplicații.

Semnificația analizei numerice

Analizarea informațiilor este o procedură simbolică, dar programarea de astăzi este încă aceeași procesare a informațiilor numerice ca și acum trei decenii. În trecut, nu exista JavaScript și parseInt. Dar din experiența trecutului au venit cunoștințele despre prelucrarea informațiilor numerice, potențialul pentru expresii obisnuite si alte idei similare.

La o anumită perioadă de timp, limbajele de programare și-au luat „libertăți”. Cuvinte cheie, a „deblocat” alfabetul chirilic și a permis dezvoltatorului să proceseze date slab formalizate. Dar această perioadă a fost scurtă și, odată cu interesul crescând pentru programarea orientată pe obiecte, s-a format între timp o „gaură neagră”:

  • cum se face;
  • ce să fac.

Limbajul de programare modern în general (deși sensul limbaj JavaScript greu de apreciat în general) este obligat să separe instrumentul muncii de subiectul muncii. Instrumentul trebuie să fie precis și rapid, iar subiectul lucrării poate fi atât de mare cât se dorește și practic neformalizat. Dar rezultatul programului devine mai semnificativ cu fiecare moment de timp.

Dezvoltarea de obiecte fără JavaScript parseInt este o pierdere nejustificată de efort, timp și cod. Metodele obiectului ar trebui să funcționeze ca un ceasornic, rapid și precis. Dar obiectul pentru munca obiectului este informația, rezultatul muncii obiectului este și informația. Și ceea ce înțelegem prin obiect aici nu este neapărat conceptul de JavaScript, PHP sau Python... - acestea sunt variante și stiluri private de codificare a obiectelor reale.

Funcția parseInt() ia un șir ca argument și returnează un număr întreg în conformitate cu radixul specificat.

Sintaxă parseInt( şir, radix); Parametri șir Valoarea care trebuie interpretată. Dacă valoarea parametrului șir nu este un tip șir, acesta este convertit în unul (folosind operația abstractă ToString). Spațiile de la începutul unei linii nu sunt numărate. radix Un număr întreg cuprins între 2 și 36 care reprezintă baza sistemului numeric numeric siruri de caractere descris mai sus. Majoritatea utilizatorilor folosesc sistemul numeric zecimal și specifică 10. Specificați întotdeauna acest parametru pentru a elimina erorile de citire și pentru a asigura o execuție corectă și rezultate previzibile. Când radixul nu este specificat, implementările diferite pot returna rezultate diferite. Valoare returnată

Un număr întreg obținut prin analizarea (parsarea și interpretarea) șirului trecut. Dacă primul caracter nu a putut fi convertit într-un număr, atunci este returnat NaN.

Descriere

Funcția parseInt convertește primul argument transmis în tip șir, îl interpretează și returnează un număr întreg sau o valoare NaN. Rezultatul (dacă nu NaN) este un număr întreg și este primul argument (șir), tratat ca un număr în sistem specificat notație (radix). De exemplu, baza 10 indică conversia din zecimal, 8 din octal, 16 din hexazecimal și așa mai departe. Dacă baza este mai mare de 10, atunci literele sunt folosite pentru a reprezenta numere mai mari de 9. De exemplu, pentru numerele hexazecimale (baza 16), se folosesc literele de la A la F.

Dacă funcția parseInt întâlnește un caracter care nu este un număr în sistemul de numere specificat, omite acel și toate caracterele ulterioare (chiar dacă sunt valide) și returnează un număr întreg convertit din porțiunea șirului care precedă acel caracter. parseInt taie partea fracțională a unui număr. Sunt permise spații la începutul și la sfârșitul unei linii.

Deoarece unele numere includ caracterul e în reprezentarea șirului lor (de exemplu, 6.022e23 ), utilizarea parseInt pentru a trunchia valorile numerice poate avea ca rezultat rezultate neașteptate, când se folosesc cantități foarte mici sau foarte mari. parseInt nu trebuie folosit ca înlocuitor pentru Math.floor() .

Dacă radixul este nedefinit sau 0 (sau nu este specificat), atunci JavaScript presupune următoarele în mod implicit:

  • Dacă valoarea parametrului de intrare șir începe cu „0x” sau „0X”, radixul este 16, iar restul șirului este interpretat.
  • Dacă valoarea parametrului de intrare șir începe cu „0”, radixul este fie 8, fie 10, în funcție de implementarea specifică. Specificația ECMAScript 5 specifică utilizarea lui 10 (zecimal), dar aceasta nu este încă acceptată de toate browserele, așa că trebuie să specificați întotdeauna radix atunci când utilizați funcția parseInt.
  • Dacă valoarea parametrului de intrare șir începe cu orice alt caracter, sistemul numeric este considerat zecimal (bază 10).

Dacă primul caracter al șirului nu poate fi convertit într-un număr, parseInt returnează NaN .

Din punct de vedere matematic, valoarea NaN nu este un număr în niciun sistem numeric. Pentru a determina dacă parseInt va returna NaN ca rezultat, puteți apela funcția isNaN. Dacă NaN este implicat în operatii aritmetice, rezultatul va fi tot NaN .

Pentru a converti un număr într-un șir dintr-o bază specificată, utilizați intValue.toString(radix) .

Exemple Exemplu: Utilizarea parseInt

15 :

ParseInt("0xF", 16); parseInt("F", 16); parseInt("17", 8); parseInt(021, 8); parseInt("015", 10); //parseInt(015, 10); va returna 15 parseInt(15.99, 10); parseInt("FXX123", 16); parseInt("1111", 2); parseInt("15*3", 10); parseInt("15e2", 10); parseInt("15px", 10); parseInt("12", 13);

Următoarele exemple returnează toate NaN:

ParseInt("Bună ziua", 8); // Nu este un număr parseInt("546", 2); // Număr incorect în sistemul numeric binar

Următoarele exemple returnează toate -15:

ParseInt("-F", 16); parseInt("-0F", 16); parseInt("-0XF", 16); parseInt(-15.1, 10) parseInt(" -17", 8); parseInt(" -15", 10); parseInt("-1111", 2); parseInt("-15e1", 10); parseInt("-12", 13);

Următoarele exemple returnează toate 4:

parseInt(4.7, 10); parseInt(4.7 * 1e22, 10); // Foarte numere mari devenit 4 parseInt (0,00000000000434 , 10 ) ; // Numerele foarte mici devin 4

Următorul exemplu returnează 224:

ParseInt("0e0", 16);

Interpretare octală fără specificarea sistemului numeric

Deși descurajat în specificația ECMAScript 3 și interzis în ECMAScript 5, multe implementări interpretează un șir numeric care începe cu 0 ca octal. Următorul exemplu poate avea fie un rezultat octal, fie un rezultat zecimal. Pentru a evita rezultate neașteptate, specificați întotdeauna radixul.

ParseInt("0e0"); // 0 parseInt("08"); // 0, „8” nu este o cifră în octal.

ECMAScript 5 elimină interpretarea octală

Specificația ECMAScript 5 nu mai permite parseInt să trateze șiruri care încep cu 0 în octal. ECMAScript 5 proclamă:

Funcția parseInt produce o valoare întreagă prin interpretarea conținutului argumentului șir în funcție de radixul specificat. Spațiul de la începutul unei linii este ignorat. Dacă radixul este nespecificat sau egal cu 0, se presupune că este 10, cu excepția cazului în care șirul începe cu perechi de caractere 0x sau 0X: atunci se presupune că baza este 16. Dacă radixul este specificat ca 16, numărul poate începe și cu perechi de caractere 0x sau 0X .

Aici ECMAScript 5 diverge de specificația ECMAScript 3, care a descurajat, dar nu a interzis interpretarea octală.

Deoarece comportamentul descris mai sus nu este disponibil în toate implementările din 2013 și este necesar suportul pentru browsere mai vechi, specificați întotdeauna radixul.

Funcție de interpretare mai strictă

Uneori este nevoie de un mod mai riguros de interpretare a valorilor întregi. Expresiile regulate pot ajuta în acest sens:

Var filterInt = funcție (valoare) ( ​​dacă (/^(\-|\+)?(+|Infinit)$/.test(valoare)) return Number(valoare); return NaN; ) console.log(filterInt ("421")); // 421 console.log(filterInt("-421")); // -421 console.log(filterInt("+421")); // 421 console.log(filterInt("Infinity")); // Infinity console.log(filterInt("421e+0")); // NaN console.log(filterInt("421hop"); // NaN console.log(filterInt("hop1.61803398875")); // NaN console.log(filterInt("1.61803398875")); // NaN

Specificație Comentariu privind starea specificației
ECMAScript prima ediție (ECMA-262) Standard Definiție inițială.
ECMAScript 5.1 (ECMA-262)
Standard
ECMAScript 2015 (ediția a 6-a, ECMA-262)
Definiția „parseInt” este în această specificație.
Standard
Ultima versiune ECMAScript (ECMA-262)
Definiția „parseInt” este în această specificație.
Proiect
Suport pentru browser

Tabelul de compatibilitate de pe această pagină este generat din date structurate. Dacă doriți să contribuiți la date, vă rugăm să consultați https://github.com/mdn/browser-compat-data și să ne trimiteți o cerere de extragere.

Actualizați datele de compatibilitate pe GitHub

Computere Mobile Server Chrome Edge Firefox Internet Explorer Opera Safari Android Webview Chrome pentru Android Edge Mobile Firefox pentru Android Opera pentru Android Safari pe iOS Samsung Internet Node.jsSuport de bază Analizele șirurile care conduc la zero sunt zecimale, nu octale
Crom Sprijin deplin daEdge Suport complet DaSuport complet pentru Firefox 1IE Suport complet DaOpera Suport complet DaSafari Suport complet DaWebView Android Suport complet DaChrome Android Suport complet DaEdge Mobile Suport complet DaSuport Firefox Android Full 4Opera Android Suport complet DaSafari iOS Suport complet DaSamsung Internet Android Suport complet Danodejs Suport complet Da
Suport complet Chrome 23Edge Suport complet DaFirefox Suport complet 21IE Suport complet 9Opera Suport complet DaSafari Suport complet 6WebView Android suport complet 4.4Chrome Android Suport complet DaEdge Mobile Suport complet DaFirefox Android Suport complet 21Opera Android Suport complet DaSafari iOS Suport complet 6Samsung Internet Android Suport complet Danodejs Suport complet Da

Funcția ParseInt este concepută pentru a converti un șir într-un număr în JavaScript. Metoda ia o valoare șir ca argument și o convertește într-un număr fără zecimale sau, alternativ, produce o valoare NaN. ParseInt preia două argumente. Al doilea parametru specifică sistemul numeric care trebuie utilizat la conversia unei valori șir într-un număr.

Un exemplu simplu folosind notația zecimală arată astfel:

var x = "1"; console.log(x, tipul x); //1 linie x = parseInt(x, 10); console.log(x, tipul x); //1 număr Exemplu de cod online

Dacă nu se transmite niciun argument pentru o valoare de sistem numeric, se va folosi valoarea implicită (zecimală de bază). De asemenea, puteți seta valoarea la 2 pentru a spune funcției să folosească notația binară. O valoare de 8 îi spune lui ParseInt să folosească sistem octal, iar valoarea 16 indică hexazecimal. Pentru sistemele numerice cu o bază mai mare de 10, se folosesc litere ale alfabetului în locul numerelor mai mari de 9.

Înainte de a converti un șir într-un număr în JavaScript, să ne uităm la un exemplu de conversie număr binar la un număr întreg în sistemul zecimal:

var x = 10; x = parseInt(x, 2); console.log(x); //2 Exemplu de cod online

Variabila x primește valoarea 10. În binar, valoarea 10 (adică „unu, zero”) este echivalentă cu 2 în zecimală. Am transmis ParseInt 10 funcției și am specificat binar ca sistem numeric. Funcția a returnat valoarea 2, care este un număr întreg echivalent cu „unu, zero”.

Ce se întâmplă dacă trecem ParseInt funcției numar decimal cu una sau mai multe zecimale? Să aruncăm o privire:

var x = 3,14; x = parseInt(x, 10); console.log(x); //3 Exemplu de cod online

Funcția ParseInt a luat o valoare numerică cu zecimale și a convertit-o într-un număr întreg. Dar dacă trebuie să convertiți un șir într-un număr în JavaScript? Iată un exemplu:

var x = „Hola World!”; x = parseInt(x, 10); console.log(x); //NaN ...sau Not a Number Online example code

Dacă ParseInt primește un argument care nu poate fi convertit cu ușurință într-o valoare numerică, atunci valoarea returnată va fi NaN (sau nu un număr). Dacă o combinație de numere numerice și alfabetice este transmisă funcției valori de șir, apoi va converti caracterele numerice în numere întregi și va elimina restul:

var x = "123UnoDosTres";

Explorați cursurile JavaScript

x = parseInt(x, 10); console.log(x); //123 Exemplu de cod online

Acestea sunt principiile de bază ale utilizării funcției ParseInt. Trebuie amintit că scopul principal al ParseInt este traducerea JavaScript a unui șir într-un număr (fără zecimale). De asemenea, puteți specifica sistemul de numere de utilizat. Dacă unei funcții i se transmite o valoare care nu poate fi convertită într-un număr, atunci ParseInt returnează NaN .

Mai multe informații despre funcția JavaScript ParseInt pot fi găsite aici.

Traducerea articolului „Utilizarea metodei JavaScript ParseInt” a fost pregătită de echipa prietenoasă a proiectului.

Rău Bun