v2.5.2
Giriş yap

Js toplama

frexx
481 defa görüntülendi

Merhaba arkadaşlar bir javascript kodu var ve yardım etmeniz gerekiyor.

  localStorage.setItem("sayi", 15);

Ve bu locale kaydediliyor, bunun üstüne başka veri yazdırıp toplama işlemi yaptırmak istiyorum.
Örnek:

    localStorage.setItem("sayi", 15);
     localStorage.setItem("sayi", 30);

Sayı 30 değeri gönderince sayı 15in üstüne eklenmesi lazım.
Nasıl yapabilirim ?

ozguracar
883 gün önce

Öncelikle eski değeri almalısın bunun için

    localStorage.getItem("sayi")

Fonksiyonu kullanılır sonrasında alınan değeri number ifadeye çevirmen gerekir.

    Number(localStorage.getItem("sayi"))

Bundan sonra gelen ifadenin number olduğundan emin olmak için birkaç kontrol daha yapmalısın.

    let oldValue = Number(localStorage.getItem("sayi"))
    if(typeof oldValue !== 'number' || isNaN(oldValue)){
       oldValue=0
    }

Eğer kontrolü geçemezse sıfır olarak baz alıp kodunun hata vermesini engellersin.
Şimdide eski değerini yeni değerle toplayıp storagetaki değerin üzerine yazabilirsin.

    localStorage.setItem("sayi", oldValue + 30);

Tüm code;

    let oldValue = Number(localStorage.getItem("sayi"))
    if(typeof oldValue !== 'number' || isNaN(oldValue)){
       oldValue=0
    }
    localStorage.setItem("sayi", oldValue + 30);