SORU
3 Kasım 2010, ÇARŞAMBA


int parseınt veya Sayıda kullanmak için bir dize?

Başlık zaten, ben bir tamsayı bir dize dönüştürme zaman tercih ne olmalı? dediği gibi Herhangi bir performans diğer üzerinde kullanırken kazanç var mı?

CEVAP
3 Kasım 2010, ÇARŞAMBA


Evet, ve biranlamsal olarak farklı, Number constructor called as a function gerçekleştirirtür dönüştürmeve parseInt gerçekleştirirayrıştırmaörneğin:

// parsing:
parseInt("20px");       // 20
parseInt("10100", 2);   // 20
parseInt("2e1");        // 2

// type conversion
Number("20px");       // NaN
Number("2e1");        // 20, exponential notation

Unutmayın, eğer parseInt algılar bir lider sıfır dize olacak ayrıştırmak sayıyı sekizlik tabana, bu değişti üzerinde ECMA 5, yeni sürümü standart, ama uzun zaman alır içeri tarayıcı uygulamaları (bu bir uyumsuzluk ile ECMA 3), de parseInt göz sondaki karakter yok karşılık herhangi bir rakam, halen kullanılan temel.

Number kurucu octals algılamıyor:

Number("010");         // 10
parseInt("010");       // 8, implicit octal
parseInt("010", 10);   // 10, decimal radix used

Ama onaltılı gösterimde sayılar, parseInt gibi işleyebilir:

Number("0xF");   // 15
parseInt("0xF"); //15

Buna ek olarak, yaygın olarak kullanılan yapı Sayısal tür dönüştürme gerçekleştirmek için, Unary Operator (p. 72) bir fonksiyonu olarak Number oluşturucu kullanarak eşdeğerdir.

 "2e1";   // 20
 "0xF";   // 15
 "010";   // 10

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Andrey Menshikov

    Andrey Mensh

    28 Ocak 2012
  • Official Clouds

    Official Clo

    1 HAZİRAN 2011
  • SellerDp

    SellerDp

    27 EKİM 2009