Fonksiyonlar nasıl çalışır?

vodkajaz

Decapat
Katılım
17 Nisan 2023
Mesajlar
327
Daha fazla  
Cinsiyet
Erkek
JavaScript öğrenme aşamasındayım ancak fonksiyonları bir türlü kendim yazmayı beceremiyorum çünkü mantığını anlamıyorum. Aşağıda ki fonksiyon içinde zaten dtarih bilgisi varken neden fonksiyon içinde dogumyili tanımlanmış ve yıl ondan çıkartılıyor. Burada return tam olarak ne işe yarıyor? Son sorum ise const sonuç = yashesapla(dtarih); burası neden var defalarca izlemem rağmen mantığını bir türlü çözemedim bilen arkadaşlar yardımcı olursa sevinirim.
Dtarih = 1992;
Yil = 2024;

Function yashesapla(dogumyili)
{
Let yas = yil-dogumyili;
Return yas;
}
Const sonuç = yashesapla(dtarih);
Document. Write(sonuç);

(console.log ile yazmam gerektiğini biliyorum bu şekilde tercih ediyorum)
 
Son düzenleyen: Moderatör:
Fonksiyonlara varana kadar öğrenmen gereken birden fazla konsept var. Bu konseptlerin neredeyse hepsini atlamışsın. Dolayısıyla anlamakta güçlük çekiyorsun.

Dtarih dışarıda tanımlanmış olsa bile, fonksiyonun bundan haberi yok. Bu dtarih adlı değişken farklı bir dosyadan da gelebilirdi. Bu sebepten kaynaklı, doğum yılı değişkeni var.

Fonksiyon alt bir scope. Fonksiyon içerisinde tanımladığın hiç bir şeyi dışarıda kullanamazsın. Fakat içindeki şeyleri, başka bir alanda kullanmak için dışarıya çıkarabilirsin. return anahtar kelimesi bu işe yarıyor.

Matematikte ki fonksiyonlarla benzer bir mantığa sahip programlama fonksiyonları. Çıkış noktaları da aynı zaten.

f(x) = 2024 - x; dediğin zaman matematiksel bir fonksiyon tanımlamış olursun. f(1992) dediğinde x gördüğün yere 1992 yazacaksın. f(1992)=32'dir. Aynı mantıkla f ve x yerine yashesapla(dogumyili) oluyor. Şimdi f = dediğimizde ki '=' ise bu return key wordü işte.

const sonuç = yashesapla(dtarih); ise y = f(1992) matematiksel ifadesinden farksız. Fonksiyondan gelecek sonucu kullanabilmek adına bir şeye atıyorsun. (Not: const anahtar kelimesi, constant kelimesinin kısaltmasıdır. Sabit anlamına gelir. Bu anahtar kelimeyle oluşturulan değerler sabittir, değiştirilemezler.)
 

Technopat Haberler

Geri
Yukarı