You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 1-js/02-first-steps/15-function-expressions/article.md
+8-8Lines changed: 8 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -65,11 +65,11 @@ Detayına bakılacak olursa:
65
65
1.`(1)` fonksiyon tanımlanır ve `selamVer` değişkenine atanır.
66
66
2.`(2)` bunu `func` değişkenine kopyalar.
67
67
68
-
Tekrardan hatırlatmak gerekirse: `selamVer` etrafında parantez bulunmamaktadır. Eğer `func = selamVer()` şeklinde parantez ile yazılacak olsaydı,
68
+
Tekrardan hatırlatmak gerekirse: `selamVer` etrafında parantez bulunmamaktadır. Eğer `func = selamVer()` şeklinde parantez ile yazılacak olsaydı,
69
69
func değişkenine atanan değer `selamVer` fonksiyonunun kendisi değil, bu fonksiyonun çıktısı olurdu.
70
70
71
71
3. Fonksiyon bundan sonra `selamVer()` ve `func()` şeklinde çağırılabilir.
72
-
72
+
73
73
Ayrıca ilk satır için *fonksiyon ifadesi* de kullanılabilirdi:
74
74
75
75
```js
@@ -99,7 +99,7 @@ let selamVer = function() {
99
99
100
100
Cevap basit:
101
101
- Kod bloklarının sonunda `;` e gerek yoktur. Örneğin `if{ ...}`, `for{ ... }`, `for { }`, `function f{}` vs.
102
-
- Fonksiyon ifadesi bir ifade içinde kullanıldığından `let selamVer = ....;` bir değerdir. Kod bloğu değildir. Cümle sonlarında değer ne olursa olsun `;` kullanılması önerilir. Bundan dolayı `;` *fonksiyon ifadesi* ile alaklı değildir. Sadece tanımlamanın sonunu göstermek içindir. Tıpkı diğer tanımlamalarda olduğu gibi.
102
+
- Fonksiyon ifadesi bir ifade içinde kullanıldığından `let selamVer = ....;` bir değerdir. Kod bloğu değildir. Cümle sonlarında değer ne olursa olsun `;` kullanılması önerilir. Bundan dolayı `;` *fonksiyon ifadesi* ile alakalı değildir. Sadece tanımlamanın sonunu göstermek içindir. Tıpkı diğer tanımlamalarda olduğu gibi.
Daha kısa yolunu yazmadan önce söylemek gerekir ki bu tür fonksiyonlar oldukça sıkça kullanılmaktadır. Gerçek hayattaki örnekleri ile yukarıdaki arasında fark ise gerçek hayatta basit bir `confirm` yerine daha karmaşık olaylar için kullanılıyor olmalarıdır.
142
+
Daha kısa yolunu yazmadan önce söylemek gerekir ki bu tür fonksiyonlar oldukça sıkça kullanılmaktadır. Gerçek hayattaki örnekleri ile yukarıdaki arasında fark ise gerçek hayatta basit bir `confirm` yerine daha karmaşık olaylar için kullanılıyor olmalarıdır.
143
143
144
144
**`sor` fonksiyonunun argümanları *callbacks* veya *geri çağrım fonksiyonları* olarak adlandırılırlar.
145
145
@@ -203,7 +203,7 @@ Yazım: Kodda neyin ne olduğunu görme.
203
203
204
204
Daha ince bir değişiklik ise fonksiyonun JavaScript motorunda ne zaman yaratılacağıdır.
205
205
206
-
**Fonksiyon ifadesi kod çalışırken fonksiyona geldikten sonra kullılır**
206
+
**Fonksiyon ifadesi kod çalışırken fonksiyona geldikten sonra kullanılır**
207
207
208
208
Çalışma atamanın sağ tarafına geçince `let sum = function...`, bu noktadan sonra fonksiyon artık yaratıldı. Bundan böyle çağırılabilir veya başka bir değişkene atanabilir.
209
209
@@ -288,9 +288,9 @@ if (yas < 18) {
288
288
merhaba(); // \ (çalışır)
289
289
*/!*
290
290
// |
291
-
function merhaba() { // |
291
+
function merhaba() { // |
292
292
alert("Merhaba!"); // | Fonksiyon tanımı bu blok içirisinde her yerden çağırılabilir.
293
-
} // |
293
+
} // |
294
294
// |
295
295
*!*
296
296
merhaba(); // / (çalışır)
@@ -370,7 +370,7 @@ Fakat eğer Fonksiyon Tanımı işimize yaramaz ise(yukarıda örneğin Fonksiyo
370
370
- Fonksiyon tanımları kod çalıştırmadan önce işlenir. Böylece kodun her yerinden ulaşılabilir olurlar.
371
371
- Fonksiyon tanımları ise kod çalışırken bu tanıma erişirse çalışır.
372
372
373
-
Çoğu zaman Fonksiyon Tanımı metodu tercih edilmelidir. Çünkü bu şekilde fonksiyon tanımlanmadan önce fonksiyon çağrısı yapmak mümkündür. Bu kodun daha düzenli tutulmasında yarcımdı olur. Ayrıca daha okunabilirdir.
373
+
Çoğu zaman Fonksiyon Tanımı metodu tercih edilmelidir. Çünkü bu şekilde fonksiyon tanımlanmadan önce fonksiyon çağrısı yapmak mümkündür. Bu kodun daha düzenli tutulmasında yardımcı olur. Ayrıca daha okunabilirdir.
374
374
375
375
Fonksiyon ifadesi sadece Fonksiyon Tanımı yetersiz kalırsa kullanılmalıdır. Bu örnek daha önce yukarıda yapılmıştı.
Copy file name to clipboardExpand all lines: 1-js/02-first-steps/16-arrow-functions-basics/article.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -63,7 +63,7 @@ let merhaba = (yas < 18) ?
63
63
() =>alert('Merhaba') :
64
64
() =>alert("Merhabalar!");
65
65
66
-
merhaba();
66
+
merhaba();
67
67
```
68
68
69
69
Ok fonksiyonları ilk yazılmaya başlandığında göze yabancı gelebilir. Fakat zamanla göz bu yapıya alışacak ve hemen ayak uyduracaktır.
@@ -100,5 +100,5 @@ alert( toplam(1, 2) ); // 3
100
100
101
101
Ok Fonksiyonları tek satır için kullanışlıdır. İki türlüsü vardır:
102
102
103
-
1. Süslü parantez olmadan: Fonksiyon sağ taraftaki ifadeyi çalıştırır ve sonucu dönderir. Tek satırda biten işlemler için kullanılmalıdır.
103
+
1. Süslü parantez olmadan: Fonksiyon sağ taraftaki ifadeyi çalıştırır ve sonucu döndürür. Tek satırda biten işlemler için kullanılmalıdır.
104
104
2. Süslü parantez ile `(...args) => { gövde }` -- süslü parantez bizim birden fazla satır yazmamızı sağlar. Fakat gövde içerisinde `return` kullanılması gerekmektedir.
: `soru` sor ve kullanıcının girdiği değeri dönder. Eğer kullanıcı "iptal" tuşuna bakarsa `null`dönder.
103
+
: `soru` sor ve kullanıcının girdiği değeri döndür. Eğer kullanıcı "iptal" tuşuna bakarsa `null`döndür.
104
104
105
105
[`confirm(soru)`](mdn:api/Window/confirm)
106
-
: `soru` sor ve "Tamam" mı yoksa "İptal" mi diye seçenekler sun. Sonuçta seçilene göre `true/false`dönder.
106
+
: `soru` sor ve "Tamam" mı yoksa "İptal" mi diye seçenekler sun. Sonuçta seçilene göre `true/false`döndür.
107
107
108
108
[`alert(mesaj)`](mdn:api/Window/alert)
109
109
: Mesajın çıktısını ekrana uyarı olarak ver.
110
110
111
-
tüm bo fonksiyonlar *modal* dır. Tekrara hatırlatmak gerekirse modal kullanıcının etkileşimi olana kadar kodu durdururlar. Yani kullanıcıdan cevabı beklerler.
111
+
Tüm bu fonksiyonlar *modal* dır. Tekrar hatırlatmak gerekirse modallar kullanıcının etkileşimi olana kadar kodu durdururlar. Yani kullanıcıdan cevabı beklerler.
112
112
113
113
Örneğin:
114
114
@@ -143,7 +143,7 @@ Bit seviyesi işlemler
143
143
: Bit seviye operatörleri şu şekilde kullanılabilir: [docs](mdn:/JavaScript/Reference/Operators/Bitwise_Operators)
144
144
145
145
Üçlü operatör
146
-
: Üç tane paremetreden oluşur: `koşul ? sonucA : sonucB`. Eğer `koşul` doğru ise `sonucA` döndürür, yanlış ise `sonucB`
146
+
: Üç tane paremetreden oluşur: `koşul ? sonucA : sonucB`. Eğer `koşul` doğru ise `sonucA` döndürür, yanlış ise `sonucB`
147
147
148
148
Mantıksal operatörler:
149
149
: Mantıksal VE `&&`, VEYA `||` operatörleri ile bu işlemler yapılabilir.
@@ -187,7 +187,7 @@ Geri kalan operatörleri daha derin bir biçimde <info:operators>, <info:compari
187
187
-`for(let...)` içinde tanımlanan değişkenler sadece döngü içerisinden erişilebilirdir. Fakat`let`i pas geçip var olan değişkeni kullanmak da mümkündür.
188
188
- Direktifler `break/continue` döngüden çıkılmasını sağlar. `label` kullanarak iç içe döngüde `break/continue` nereye dallanacağını belirleyebilirsiniz.
0 commit comments