Number Metotları
Basamak Sınırlama
.toFixed()
|.toPrecision()
Ondalık gösterimlerdeki hataları çözmek için .toFixed()
metodu ile ondalık basamağı sınırlayabiliriz. Örnek.
let sayi1 = 0.1;
let sayi2 = 0.2;
let toplam = (sayi1 + sayi2).toFixed(2);
alert(toplam); // 0.30 Çıktısı alınır.
toplam = (sayi1 + sayi2).toFixed(4);
alert(toplam); // 0.3000 Çıktısı alınır.
Bu metot ile parametre olarak verdiğiniz sayı kadar ondalık basamak kadar sayı ele alınır. Eğer sayının olduğundan daha fazla basamak verirseniz 0 (sıfır) ekleyerek istediğiniz basamak sayısına sabitler. .toFixed()
metodunun string tipinde değer döndürdüğünü unutmayınız.
Genel olarak sayıların basamak sayısını sınırlamak için .toPrecision()
metodu kullanılır.
let sayi1 = 1234.5678;
alert( sayi1.toPrecision(6) ); //1234.57 çıktısı alınır. Son basamağı yuvarlar.
alert( sayi1.toPrecision(4) ); //1234 çıktısı alınır. Son basamağı yuvarlar.
sayi1 = 123456789;
alert( sayi1.toPrecision(6) ); //1.23457e+8 çıktısı alınır. Son basamağı yuvarlar.
alert( sayi1.toPrecision(4) ); //1.235e+8 çıktısı alınır. Son basamağı yuvarlar.
.toPrecision()
ile basamak sınırlarken soldan başlar ve verilen parametre kadar basamağı alır. Örneğin 1234'ün ilk iki basamağını alırsak 1200 olduğu için 1.2e+3 olarak yuvarlar. Tam sayılarda sayının birler basamağına kadar olan kısmını almıyorsanız genellikle e (exponent) ile gösterim yapar.
Sayı Sistemlerini Çevirme
.toString()
Sayı sistemlerini (16-10-8-2 vb.) birbirine .toString()
metodu ile çevirebiliriz. Örnek.
let sayi = 123456789;
let binary = 1001000111;
alert( sayi.toString(2) );
alert( binary.toString(10) );
alert( binary.toString(16) );
alert( sayi.toString(8) );
alert( sayi.toString(5) );
Bir sayı doğrudan da .toString()
metodu ile çevrilebilir fakat ondalıklı sayılarda hata almamak için parantez içine almak veya çift nokta kullanmak gerekir.
alert( 1234.toString(2) );
alert( (1234.2).toString(2) );
alert( 1234.2..toString(2) );
.toString()
metodu ile elde edilen veri tipi string olur. Dolayısıyla matematiksel işlemlerde kullanmak için number tipine dönüştürülmesi gerekir.
Last updated