SORU
5 Temmuz 2012, PERŞEMBE


Neden parseınt(1/0, 19) 18 döner?

JavaScript sinir bozucu bir sorunum var.

> parseInt(1 / 0, 19)
> 18

Neden parseInt 18 döner?

CEVAP
5 Temmuz 2012, PERŞEMBE


1/0 sonucu Infinity.

parseInt Infinity.toString() öncelikle, dize üreten anlamına gelir. "Infinity" bir dize olarak ilk bağımsız değişken davranır. Eğer ondalık Bankası 19 "Infinity" dönüştürmek istediği gibi çalışıyor.

Burada ondalık değerleri ile birlikte Bankası 19 basamak:

Base 19   Base 10 (decimal)
---------------------------
   0            0
   1            1
   2            2
   3            3
   4            4
   5            5
   6            6
   7            7
   8            8
   9            9
   a            10
   b            11
   c            12
   d            13
   e            14
   f            15
   g            16
   h            17
   i            18

Ne olur yanındaki parseInt tarar giriş "Infinity" bulmak için hangi bölümü olabilir ayrıştırılır ve durduktan sonra kabul edilen ilk I (n geçerli bir rakam Bankası 19).

Bu nedenle eğer bu tabloya göre 18 ondalık dönüştürür parseInt("I", 19), yukarıda denilen gibi davranır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dirty Loops

    Dirty Loops

    21 Mayıs 2007
  • Friday NightFort

    Friday Night

    15 EYLÜL 2011
  • HereWeStayKings

    HereWeStayKi

    3 NİSAN 2013