De enige uitzondering zijn spaties aan het begin of aan het eind van de string, die worden genegeerd.

Maar in het echte leven hebben we vaak waarden in eenheden, zoals "100px" of "12pt" in CSS. Ook komt in veel landen het valutasymbool achter het bedrag, dus we hebben "19€" en willen daar een numerieke waarde uit halen.

Daar zijn parseInt en parseFloat voor.

Ze “lezen” een getal uit een string tot ze niet meer kunnen. In geval van een fout wordt het verzamelde getal geretourneerd. De functie parseInt retourneert een geheel getal, terwijl parseFloat een floating-point getal zal retourneren:

alert( parseInt('100px') ); // 100alert( parseFloat('12.5em') ); // 12.5alert( parseInt('12.3') ); // 12, only the integer part is returnedalert( parseFloat('12.3.4') ); // 12.3, the second point stops the reading

Er zijn situaties waarin parseInt/parseFloatNaN zal teruggeven. Dit gebeurt wanneer er geen cijfers konden worden gelezen:

alert( parseInt('a123') ); // NaN, the first symbol stops the process

Het tweede argument van parseInt(str, radix)
De parseInt() functie heeft een optionele tweede parameter. Deze specificeert de basis van het getallenstelsel, zodat parseInt ook reeksen hex-getallen, binaire getallen enzovoort kan ontleden:

alert( parseInt('0xff', 16) ); // 255alert( parseInt('ff', 16) ); // 255, without 0x also worksalert( parseInt('2n9c', 36) ); // 123456

Andere wiskundige functies

JavaScript heeft een ingebouwd Math object dat een kleine bibliotheek van wiskundige functies en constanten bevat.

Een paar voorbeelden:

Math.random()

Retourneert een willekeurig getal van 0 tot 1 (1 niet meegerekend).

alert( Math.random() ); // 0.1234567894322alert( Math.random() ); // 0.5435252343232alert( Math.random() ); // ... (any random numbers)

Math.max(a, b, c...)Math.min(a, b, c...)

Krijgt de grootste/kleinste uit het willekeurig aantal argumenten.

alert( Math.max(3, 5, -10, 0, 1) ); // 5alert( Math.min(1, 2) ); // 1

Math.pow(n, power)

Returns n verheven tot de gegeven macht.

alert( Math.pow(2, 10) ); // 2 in power 10 = 1024

Er zijn meer functies en constanten in het Math object, inclusief trigonometrie, die je kunt vinden in de docs voor het Math object.

Samenvatting

Om getallen met veel nullen te schrijven:

  • Voeg "e" met de nullen tellen toe aan het getal. Zoals: 123e6 is hetzelfde als 123 met 6 nullen 123000000.
  • Een negatief getal na "e" zorgt ervoor dat het getal gedeeld wordt door 1 met gegeven nullen. Bijv. 123e-6 betekent 0.000123123 miljoensten).

Voor verschillende getallenstelsels:

  • Kan getallen direct schrijven in hex (0x), octaal (0o) en binair (0b) stelsel.
  • parseInt(str, base) parseert de string str in een geheel getal in getallenstelsel met gegeven base2 ≤ base ≤ 36.
  • num.toString(base) converteert een getal naar een string in het getallenstelsel met de gegeven base.

Voor het omzetten van waarden als 12pt en 100px naar een getal:

  • Gebruik parseInt/parseFloat voor de “zachte” conversie, die een getal uit een tekenreeks leest en vervolgens de waarde teruggeeft die ze vóór de fout konden lezen.

Voor breuken:

  • Rond af met Math.floorMath.ceilMath.truncMath.round of num.toFixed(precision).
  • Houd er rekening mee dat er precisieverlies optreedt als je met breuken werkt.

Meer wiskundige functies:

  • Zie het Math-object als je ze nodig hebt. De bibliotheek is erg klein, maar kan in de basisbehoeften voorzien.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *