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

  • emimusic

    emimusic

    10 Mart 2006
  • Lin Steven

    Lin Steven

    17 EKİM 2006
  • Skrillex

    Skrillex

    6 NİSAN 2010