layout | chapter | pageNumber |
---|---|---|
editorial |
8 |
53 |
Fonksiyonlar programlamadaki en güçlü ve temel kavramlardan biridir. Fonksiyonlar matematiksel fonksiyonlar gibi dönüşümler gerçekleştirir, arguments adı verilen girdi değerlerini alır ve bir çıktı değeri döndürür(return)
Fonksiyonlar iki şekilde oluşturulabilir: function declaration
(fonksiyon tanımı) veya function expression
(fonksiyon ifadesi) kullanılarak. Fonksiyon ifadesi kullanıldığında fonksiyon adı atlanarak fonksiyon bir anonymous function
( anonim fonksiyon) haline getirilebilir. Fonksiyonlar da değişkenler gibi tanımlanmalıdır. Şimdi x
adında bir argüman kabul eden ve x'in çiftini döndüren bir double
fonksiyonu tanımlayalım:
// bir fonksiyon tanımlama örneği
function double(x) {
return 2 * x;
}
Note: yukarıdaki fonksiyona tanımlanmadan önce başvurulabilir.
JavaScript'te fonksiyonlar da değerdir; değişkenlerde saklanabilir (tıpkı sayılar, dizeler vb. gibi) ve diğer fonksiyonlara argüman (parametre) olarak verilebilirler:
// bir fonksiyon ifadesi örneği
let double = function (x) {
return 2 * x;
};
Note: yukarıdaki fonksiyon, diğer değişkenler gibi tanımlanmadan önce referans gösterilemez.
{% hint style="info" %} Callback, başka bir fonksiyona argüman olarak aktarılan bir fonksiyondur. {% endhint %}
Bir arrow fonksiyonu, bazı sınırlamalarla birlikte bazı semantik farklılıklara sahip olan geleneksel fonksiyonlara göre kompakt bir alternatiftir. Bu fonksiyonların this
, arguments
ve super
için kendi bağları yoktur ve constructor(yapıcı) olarak kullanılamazlar. Bir arrow fonksiyonu örneği:
const double = (x) => 2 * x;
{% hint style="warning" %}
Arrow fonksiyonundaki this
anahtar sözcüğü, arrow fonksiyonunu tanımlayan nesneyi temsil eder.
{% endhint %}