Javascript, çevirici bir programlama dilidir. Tıpkı diğer dillerde olduğu gibi, bir geliştirici veya programcının genellikle hata işlemeye dikkat etmesi gerekir. Çoğunlukla bir programcının veya geliştiricinin, veritabanına bazı verilere erişirken veya veri atarken hataları ele alması gerekir. Bu nedenle, hata işleme, herhangi bir programlama projesinin önemli bir parçasıdır. Bir programcının veya geliştiricinin sıklıkla yüzleşmek zorunda olduğu programlamada üç tür hata vardır.
Sözdizimi hatası - Programlama dilinin sözdizimine karşı kod yazma hatası. Örneğin, bir noktalı virgülün eksik olması veya işlevi oluşturma ve çağırma kuralına uymama.
Mantıksal Hata - Mantık yapısında bir hata. Örneğin, yanlış çıktıyla sonuçlanan yanlış aritmetik işlemi uygulamak.
Çalışma hatası - Çalışma zamanı sırasında hata oluştu. Bildirmeden bir işlevi çağırmak gibi.
Çalışma zamanı sırasında aldığımız hata, aynı zamanda bir hata olarak da bilinir istisna. Olağanüstü kullanım çok önemlidir. Hataları ve hata kodlarını hemen atamadığımız için. bunu halletmemiz lazım. Bu yazıda, javascript'in try-catch bloğunu kullanarak istisnaların nasıl ele alınacağını anlayacağız. Ayrıca bir hataya karşı özel bir mesajın nasıl atılacağını ve “nihai” bloğunun bir try-catch bloğu ile nasıl kullanılacağını öğreneceğiz.
Sözdizimi
Try-catch bloğu kullanmanın sözdizimi çok basit ve kullanımı kolaydır. Try-catch bloğunu bu şekilde kullanabiliriz
Deneyin// denemek veya test etmek için kod
atmak // yakalamak için özel bir hata at
yakalama (hata)
// hata aldıktan sonra kod
en sonunda
// her durumda çalıştırılan kod
Bu sözdiziminde, test etmek için önce “try” bloğuna bazı kod satırları yazıyoruz. Bu kod çalıştırılırsa veya testi başarıyla geçerse. “try” bloğu “catch” bloğuna herhangi bir hata atmayacak ve “finally” bloğunu çalıştırmayacaktır. Aksi takdirde verilen hataya göre istisnaları işleyebileceğimiz “catch” bloğuna hata atacaktır. “throw” anahtar sözcüğünü kullanarak “catch” bloğuna da özel bir hata atabiliriz. "Nihayet" bloğu her durumda yürütülecek. Ya “try” bloğu herhangi birini atar ya da atmaz. Daha iyi anlamak için birkaç örnek deneyelim.
Örnekler
Her şeyden önce, try-catch bloğunun basit ve temel işleyişini göstermek için. Herhangi bir yere bildirmeden bir işlevi çağırmaya çalışıyoruz.
ilave()Konsolda kesinlikle hata verecektir
Ama şimdi bir try bloğunda çağırmayı denersek
ilave()
yakalama (hata)
Hata için catch bloğuna herhangi bir kod yazmadığımız için artık konsolda herhangi bir hata göstermeyecek. Böylece, şimdi yakalama bloğundaki hata mesajını değiştirebilir ve konsolide edebiliriz.
Deneyinilave()
yakalama (hata)
konsol.log("Hata Mesajı => " + hata)
Hataya karşı konsolda özel mesajımızı görebiliriz.
Bu, try-catch bloğunun en temel kullanımıdır. Şimdi, try bloğuna özel bir hata atmayı öğrenelim.
Atmak
Diyelim ki, denerken farklı hatalar temelinde farklı bir özel hata atmak istiyoruz. “İşlev tanımı yok” şeklinde özel bir hata verebiliriz." Böyle
Deneyinyeni Hata at ("İşlev tanımı mevcut değil")
yakalama (hata)
konsol.log("Hata Mesajı => " + hata)
Çıktıda da görebileceğiniz gibi, hata mesajı artık atılan özel hatamızla değiştirildi.
Uzman İpucu
Bu try-catch'i asenkron bir fonksiyona uygulamaya çalıştığımızı varsayalım. işe yaramayacak. Motor bir sonraki satıra taşınacağından, son bloğu yürütün ve asenkron işlev daha sonra yürütülür. Örneğin, bir try-catch bloğunun içine setTimeout İşlevini uygularsak.
DeneyinsetTimeout(() =>
ilave();
, 3000)
yakalama (hata)
konsol.log("Hata Mesajı => " + hata)
en sonunda
konsol.log("sonunda 'bloğa ulaşıldı")
İlk önce “nihai” bloğunun yürütüldüğünü ve hataya bir göz attığımızda hatanın daha sonra atıldığını gözlemleyebilirsiniz. Bu, catch bloğundan kaynaklanan bir hata değildir, ancak orijinal bir programlama hatasıdır, bu, bloğu denedikleri için herhangi bir hata bulamadığı için catch bloğunun yürütülmediği anlamına gelir.
Peki! Şimdi, eğer onu çalıştırmak istiyorsak. Try-catch bloğunu setTimeout fonksiyonunun dışına değil içine uygulamamız gerekiyor. Bu nedenle, bir try-catch bloğu ile eşzamansız bir işlevi uygulamanın gerçek yolu şu şekilde olacaktır.
setTimeout(() =>Deneyin
ilave();
yakalama (hata)
konsol.log("Hata Mesajı => " + hata)
en sonunda
konsol.log("sonunda 'bloğa ulaşıldı")
, 3000)
SetTimeout işlevi nedeniyle 3 saniyelik gecikmeden sonra çıktıda gözlemleyebilirsiniz. Önce catch bloğundan hata mesajını aldık ve ardından “nially” bloğu çalıştırılıyor.
Sonuç
Bu yazıda, javascript'te adım adım try-catch bloğunu o kadar kolay ve derin bir şekilde uygulamayı öğrendik ki, bu makaleyi okuduktan sonra herhangi bir acemi, ihtiyacı olan her yerde uygulayabilecektir. Öyleyse, linuxhint ile javascript'te öğrenmeye ve deneyim kazanmaya devam edin.com. teşekkür ederim!