Burada diğer cevapların gösterdiği gibi, dönüşümü yapmanın birden çok yolu vardır:
Number('123');
+'123';
parseInt('123');
parseFloat('123.45')
parseInt
Yine de bir şeyden daha bahsetmek istiyorum .
Kullanırken parseInt
, daima radix parametresini geçmek mantıklıdır . Ondalık dönüşüm için 10
. Bu nedenle parametresi için varsayılan değerdir olabilir atlanabilir. İkili için, bir 2
ve 16
onaltılıktır. Aslında, 2 ile 36 arasında herhangi bir yarıçap çalışır.
parseInt('123') // 123 (don't do this)
parseInt('123', 10) // 123 (much better)
parseInt('1101', 2) // 13
parseInt('0xfae3', 16) // 64227
parseInt
Fonksiyonu, iyi, sayılara dönüştürmek için dizeleri ayrıştırır. Bazı JS uygulamalarında, parseInt
önde gelen sıfırları sekizlik olarak ayrıştırır:
ECMAScript 3 tarafından önerilmemesine ve ECMAScript 5 tarafından yasaklanmasına rağmen, birçok uygulama, 0 başından başlayarak sayısal bir dizgiyi sekizlik olarak yorumlar. Aşağıdakilerin sekizlik bir sonucu olabilir veya ondalık bir sonucu olabilir. Bu güvenilmez davranışı önlemek için her zaman bir sayı tabanı belirleyin.
- MDN
Kodun daha açık olması, radix parametresini belirtmenin hoş bir yan etkisidir.
Yana parseFloat
sadece tabanda 10 sayısal ifadeler ayrıştırır, burada bir sayı tabanı parametresi için gerek yoktur.
Bu konuda daha fazlası: