replace fonksiyonunu kullanırken gelen değer 0.00 ise boşlukla replace ediliyor.
Fakat replace like mantığıyla çalıştığı için 10.00 gelince de değer 1 e dönüşüyor. replace içinde birebir aynıysa değiştir gibi bir seçenek var mı?
Özet:
var deger = '10.00'
alert(deger.replace('0.00',''));
Çıktı= 1
Sonucu nasıl 10 göstereceğim? İf ile sıfırsa bunu yap diyemem çünkü yüzlerce yerde bu replace işlemi oluyor.
java'dan sonrasini okumadim. javascript mi java mi?
kesinlikle if ile yapmak zorundasın. yaptığın fonksiyon abuse edilmeye o kadar müsait ki, neresinden tutarsan tut elinde kalır.
yülerce yerde bu replace işlemi oluyorsa, bu replace işlemini bir fonksiyona bağla ve o fonksiyonu kullan.
fonksiyonun içerisinde de if işlemini yerleştir.
if işleminde de değer 1'den küçükse, boşluk ata değilse kendi değerini ata.
rakam/decimal işlemlerini bir string olarak işlersen başına bela alırsın orta vadede. hatta kısa vadede.
function sifirla(deger){
if(deger<1.00){
return '';
}else{
return deger;
}
}
gibi bir fonksiyon yap ve değiştir fonksiyonları yerine bu fonksiyonunu kullan.
hatta bu basitçe yazdığım fonksiyonu da geliştirmen lazım. deger'i parseInt falan yapıp öyle kontrol etmen gerek vs.
bi de böyle dene
deger.replace('^0.00','');
Anlamiyoz iste naparsin.
O deger hep rakam olacaksa string kullanma. Basin cok agrir.