Tek bir tıklama ile tetiklenen birden fazla işlemi yönetmek, web geliştirmede sık karşılaşılan bir görevdir. Bu makale, kod açıklığı ve sürdürülebilirliğine vurgu yaparak, bir onclick
olayına yanıt olarak birden fazla JavaScript fonksiyonunun yürütülmesi için en iyi uygulamaları ele almaktadır.
İçindekiler
- Sarmalayıcı Fonksiyon Kullanımı
- Olay Dinleyicilerinin Kullanımı (Gözüpek Olmayan JavaScript)
&&
ve||
Operatörlerinin Anlaşılması (Gelişmiş ve Daha Az Önerilen)
Sarmalayıcı Fonksiyon Kullanımı
Bu yaklaşım, birden fazla fonksiyon çağrısını tek bir fonksiyon içinde kapsüllemek suretiyle temiz ve düzenli bir kod teşvik eder. Özellikle birçok işlem veya karmaşık mantıkla uğraşırken faydalıdır.
function function1() {
console.log("Fonksiyon 1 çalıştırıldı");
// ... kodunuz ...
}
function function2() {
console.log("Fonksiyon 2 çalıştırıldı");
// ... kodunuz ...
}
function combinedFunction() {
function1();
function2();
}
// HTML
<button onclick="combinedFunction()">Tıkla</button>
combinedFunction()
, function1()
ve function2()
‘nin sırayla çalışmasını sağlayan bir sarmalayıcı görevi görür. Bu, özellikle büyük projeler için okunabilirliği artırır ve bakımı kolaylaştırır.
Olay Dinleyicilerinin Kullanımı (Gözüpek Olmayan JavaScript)
Gözüpek olmayan JavaScript, JavaScript’i HTML’den ayırmak, kod organizasyonunu, sürdürülebilirliği ve erişilebilirliği iyileştirmek için önemli bir ilkedir. Olay dinleyicileri bunu başarmak için güçlü bir yol sunar.
function function1() {
console.log("Fonksiyon 1 çalıştırıldı");
// ... kodunuz ...
}
function function2() {
console.log("Fonksiyon 2 çalıştırıldı");
// ... kodunuz ...
}
const myButton = document.getElementById("myButton");
myButton.addEventListener("click", function1);
myButton.addEventListener("click", function2);
// HTML
<button id="myButton">Tıkla</button>
Bu yöntem, aynı olaya birden fazla fonksiyon eklemeye olanak tanır. Dinleyicinin eklenme sırası, yürütme sırasını belirler (bu örnekte function1
, function2
‘den önce). Üstün organizasyonu ve sürdürülebilirliği nedeniyle büyük projeler için tercih edilen yaklaşımdır.
&&
ve ||
Operatörlerinin Anlaşılması (Gelişmiş ve Daha Az Önerilen)
Mümkün olsa da, fonksiyon çağrılarını zincirlemek için onclick
özniteliği içinde &&
(VE) ve ||
(VEYA) operatörlerinin kullanılması, azalmış okunabilirlik ve potansiyel beklenmedik davranışlar nedeniyle genellikle önerilmez.
&&
(VE): Tüm fonksiyonlar, yalnızca tüm önceki fonksiyonlar doğru bir değer döndürürse çalışır.
<button onclick="function1() && function2()">Tıkla</button>
||
(VEYA): Yürütme, doğru bir değer döndüren ilk fonksiyonda durur.
<button onclick="function1() || function2()">Tıkla</button>
Bu yaklaşım, JavaScript ve HTML’i sıkı bir şekilde birleştirir, okunabilirliği engeller ve fonksiyonlar yanlış değerler (0
, false
, null
, undefined
, ""
) döndürürse öngörülemeyen sonuçlara yol açabilir. En basit senaryolar dışında ve etkilerini tam olarak anladığınızda hariç, bundan kaçınılması en iyisidir.
Sonuç: onclick
olayları içinde birden fazla fonksiyonu işlemek için sarmalayıcı fonksiyon ve olay dinleyici yöntemleri şiddetle önerilir. Kod açıklığına, sürdürülebilirliğe ve temiz bir ayrım ilkesine öncelik vererek daha sağlam ve güvenilir web uygulamaları oluşturmaya yol açarlar.