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.
DescriereFuncț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 parseInt15 :
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ă radixDeș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țiiECMAScript 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 |
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.js | |||||||||||||
Chrome Suport complet Da | Edge Suport complet Da | Suport complet pentru Firefox 1 | IE Suport complet Da | Opera Suport complet Da | Safari Suport complet Da | WebView Android Suport complet Da | Firefox Android Suport complet 4 | Safari iOS Suport complet Da | nodejs Suport complet Da | ||||
Suport complet Chrome 23 | Edge Suport complet Da | Firefox Suport complet 21 | IE Suport complet 9 | Opera Suport complet Da | Safari Suport complet 6 | WebView Android Suport complet 4.4 | Chrome Android Suport complet Da | Edge Mobile Suport complet Da | Firefox Android Suport complet 21 | Opera Android Suport complet Da | Safari iOS Suport complet 6 | Samsung Internet Android Suport complet Da | nodejs 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 ParseIntMetoda 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 parseIntProgramarea 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 numericeAnalizarea 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.
DescriereFuncț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 parseInt15 :
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 4Următorul exemplu returnează 224:
ParseInt("0e0", 16);
Interpretare octală fără specificarea sistemului numericDeș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țieECMAScript 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 |
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.js | |||||||||||||
Crom Sprijin deplin da | Edge Suport complet Da | Suport complet pentru Firefox 1 | IE Suport complet Da | Opera Suport complet Da | Safari Suport complet Da | WebView Android Suport complet Da | Chrome Android Suport complet Da | Edge Mobile Suport complet Da | Suport Firefox Android Full 4 | Opera Android Suport complet Da | Safari iOS Suport complet Da | Samsung Internet Android Suport complet Da | nodejs Suport complet Da |
Suport complet Chrome 23 | Edge Suport complet Da | Firefox Suport complet 21 | IE Suport complet 9 | Opera Suport complet Da | Safari Suport complet 6 | WebView Android suport complet 4.4 | Chrome Android Suport complet Da | Edge Mobile Suport complet Da | Firefox Android Suport complet 21 | Opera Android Suport complet Da | Safari iOS Suport complet 6 | Samsung Internet Android Suport complet Da | nodejs 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 onlineAcestea 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