1
00:00:00,840 --> 00:00:06,120
Kapsamlamış olduğumuz Javascript işlevlerinin son temel parçası return anahtar sözcüğüdür.

2
00:00:06,210 --> 00:00:10,260
Dolayısıyla bu video, dönüş anahtar kelimesi kavramsal olarak odaklanacak.

3
00:00:10,410 --> 00:00:14,260
Ve sonra da onu kullanan fonksiyonları nasıl yazacağız.

4
00:00:14,310 --> 00:00:17,120
Bu yüzden fonksiyonların bir makine olduğunu hayal etmek hoşuma gidiyor.

5
00:00:17,230 --> 00:00:21,920
Bir işlevi yazıyoruz ve bazı girdiler alıyor ve bunlar argümanlar olacak.

6
00:00:22,110 --> 00:00:24,530
Ve bu girdilerin matematiğiyle bir şey yapar.

7
00:00:24,660 --> 00:00:29,660
Bir kullanıcının oturum açıp açmadığını kontrol eder ve puanı ekler ve sonuçta bir şey döndürür.

8
00:00:29,690 --> 00:00:32,030
Geri gönderdiği bir çıktı var.

9
00:00:32,430 --> 00:00:37,910
Şimdiye dek, işlevler yalnızca girdileri almış ve aslında hiçbir şey geri gönderilmemiş durumda.

10
00:00:37,950 --> 00:00:44,960
Dolayısıyla, son derste gördüğümüz Square adlı bir işleve sahipsek, kare bir giriş aldığında ne

11
00:00:44,970 --> 00:00:46,700
demek istediğimi göstereceğim.

12
00:00:46,950 --> 00:00:59,710
Diyelim ki X diyoruz ve içinde yaptığımız şey x x kez X iptal edildi. Kare koşarsam ve 4 gibi bir sayı geçirdim, burada 16 numara görüyorum.

13
00:01:00,120 --> 00:01:09,060
Aslında sahip olduğum bir çıktıya sahip olduğum gibi görünüyor, konsol iletişim kutusuyla konsola yazdırılan

14
00:01:09,720 --> 00:01:14,970
ancak döndürülen bir şey aslında yok gibi görünüyor.

15
00:01:15,210 --> 00:01:20,140
Yani gerçekten büyük bir fark var.

16
00:01:20,310 --> 00:01:22,010
Dönüş sözcüğünü kullanırsam, işleve gelen değeri geri alabilirim demektir.

17
00:01:22,200 --> 00:01:28,080
Şu anda onu yakalayamıyorum.

18
00:01:28,500 --> 00:01:30,150
Yani sabit bir günlük sadece konsola yazdırır.

19
00:01:30,390 --> 00:01:33,110
Dolayısıyla yalnızca bir geliştirici bunu zaten görecekti ve kodumun başka bir bölümünde de kullanamıyorum.

20
00:01:33,270 --> 00:01:39,100
Diyelim ki dört kare gibi bir çizgiye sahip

21
00:01:39,150 --> 00:01:48,960
olduğum bir şey yapmak istediğimi ve daha sonra dördüncü kareden gelenleri koymak istedim diyelim.

22
00:01:48,960 --> 00:01:52,320
Yani böyle bir şey bunları bir araya getirmek istedim.

23
00:01:52,360 --> 00:01:56,120
Yani dört kare, dört artı kare.

24
00:01:56,340 --> 00:02:00,620
Şu anda yaparsam, bana dört kare tanımsız olduğunu söyler.

25
00:02:00,810 --> 00:02:06,030
Bunun sebebi, hiçbir şey geri döndürülmemekte ya da bu çıktıyı kaybetmemektedir.

26
00:02:06,030 --> 00:02:09,790
Dolayısıyla, aslında dayanmayan bir şeyi basmasına rağmen bir şey göndermez.

27
00:02:10,050 --> 00:02:15,460
Bunu yapmak için return anahtar kelimesini kullanıyoruz.

28
00:02:15,480 --> 00:02:18,130
Bu gerçekten basit bir değişiklik.

29
00:02:18,180 --> 00:02:20,200
Geri döneceğiz ve karşılaştırılabilir kayıtlar yerine sadece dönüş yazacağım.

30
00:02:20,220 --> 00:02:26,980
Return anahtar kelimesi fonksiyon başına bir şey döndürür.

31
00:02:27,480 --> 00:02:31,690
sürece gerçekten çalışacaktı; bunun yerine IF deyimi yerine bir şey döndürdük ve

32
00:02:31,800 --> 00:02:37,310
Else yerine başka bir şey döndürdük, ancak yine de yalnızca bir tanesi döndürdüler. Aslında gerçekten geri dönecek.

33
00:02:37,980 --> 00:02:43,260
Teorik olarak birden fazla geri bildirim alabiliriz ancak birincil bir şey aslında if deyiminin olmadığı

34
00:02:43,260 --> 00:02:48,180
Bu durumda bu durumda X kez x geri döndürüyoruz.

35
00:02:48,870 --> 00:02:52,750
Bu yüzden şimdi dörtte

36
00:02:52,860 --> 00:03:03,720
bir kare yayınlarsam, bana 16 gösterdiğini görebilir, ancak bu öncekinden biraz farklı.

37
00:03:03,720 --> 00:03:04,430
16 numaralı baskıyı yazdırma şekli, burada bu okun görüleceğini ve bunun bir dönüş değeri olduğunu söyler.

38
00:03:04,440 --> 00:03:10,240
Yani sadece iptal edersem, kendi başına bir şey yazmazsanız, günlüğünü baskı numarası

39
00:03:10,500 --> 00:03:17,850
dört için iptal ettirirsiniz, ancak hemen altında, sabit günlüğün bir dönüş değeri var aslında undefined döndürür.

40
00:03:17,850 --> 00:03:23,400
Bu yüzden neden bu kadar çok tanımı görüldüğünü açıklıyoruz.

41
00:03:23,610 --> 00:03:26,580
Bunun ne olduğunu merak ettiniz mi?

42
00:03:26,580 --> 00:03:28,200
Dönüş anahtar kelimesine ulaşana kadar açıklamayı bıraktık.

43
00:03:28,200 --> 00:03:31,480
Yani her fonksiyon bir şeyler döndürür.

44
00:03:31,560 --> 00:03:33,730
Ve ne olacağını açıkça söylemezsek, sadece undefined döndürür.

45
00:03:33,890 --> 00:03:38,490
Kare işleve sahip olduğumuzu görün ve ne zaman

46
00:03:38,490 --> 00:03:45,300
çalıştırırsak, 16 undefined olsa da undefine döndü, ancak yine de undefined döndürdü.

47
00:03:45,300 --> 00:03:48,990
Bu yüzden şimdi başka bir yerde kullanmak istiyorsanız dörtlü

48
00:03:49,050 --> 00:03:57,030
karenin çıktısını elde etmek için bu değeri kullanmak için 4 kare artı 4 kareye benzeyen bu satırı geri çağırayım.

49
00:03:57,030 --> 00:04:03,910
Ve bu devam edecek.

50
00:04:04,140 --> 00:04:05,470
Biri geçecekse, X çarpı x 16 çarpılacak ve sonra 16 döndü.

51
00:04:05,660 --> 00:04:11,760
İşlevin dışına gönderecek ve işi burada yapacak.

52
00:04:11,760 --> 00:04:16,170
Ve böylece dört kare 16 olsun.

53
00:04:16,320 --> 00:04:20,370
Return anahtar sözcüğüyle yapabileceğim diğer şey, bir

54
00:04:20,370 --> 00:04:24,840
değişkene kaydedin ve böylece böyle bir şey yapabilirim.

55
00:04:24,840 --> 00:04:25,510
Var sonucu, 104 karesiyle eşittir.

56
00:04:25,740 --> 00:04:31,440
Ve şimdi sonuçlara bakarsam on bin sekiz yüz onaltı alırız.

57
00:04:32,360 --> 00:04:37,800
Böylece 104 işlev çağrısı karesi değerlendirilerek 10000 816 döndürülerek sonuçta saklandı.

58
00:04:37,800 --> 00:04:47,400
Bu nedenle, capitalize adlı bir şeyi döndüren ve Paris sözcüğü gibi bir dize giren bir

59
00:04:51,300 --> 00:04:57,120
işleve ait başka bir örneğim var ve ne yaptığını

60
00:04:57,120 --> 00:05:04,440
ilk harfi büyük harfle ve bu harfi büyük harfle döndürerek tamamlıyor.

61
00:05:04,440 --> 00:05:06,670
Böylece Paris Paris'e başkent P ile dönüyor.

62
00:05:06,810 --> 00:05:11,150
Bu yüzden, bu işlevin bütün noktası, orijinal verimizi biraz değiştirdiğinden

63
00:05:11,330 --> 00:05:17,010
dize olarak geçtikten sonra, ilk harfin büyük harf kullanan dize sürümünü geri alıyoruz.

64
00:05:17,340 --> 00:05:22,540
İlk harfi nasıl sermayeleştirdiğinin mantığı burada vurgulamak istemediğim şey.

65
00:05:22,830 --> 00:05:27,450
Burada vurgulamak istediğim şu: Paris küçük P olan değişken bir şehrim var. Sonra da büyük harfle yazılmış şehri ve dönüş değerini yeni bir değişkene kaydetmekten yararlanıyorum.

66
00:05:27,540 --> 00:05:34,840
Bu yüzden yapacağımız bir şey, dönüş değerini bir değişkene kaydetmek

67
00:05:35,280 --> 00:05:42,080
için bir fonksiyon çalıştırır, böylece tekrar başka bir yerde kullanabilirsiniz.

68
00:05:42,090 --> 00:05:47,850
Bu işlevin nasıl işlediğini merak ediyorsanız, ilk bölüm ilk harfi alır.

69
00:05:47,850 --> 00:05:50,010
Yani 0 dizinindeki ve büyük harflerdeki karakter.

70
00:05:50,010 --> 00:05:55,050
Bu durumda bize büyük harf P verecek ve sonra bu dilim bir sayı alır.

71
00:05:55,080 --> 00:05:58,450
Bu durumda 1.

72
00:05:58,590 --> 00:06:04,320
Bu, indeks 1'den itibaren her şeyi alır.

73
00:06:04,380 --> 00:06:05,800
A R sanırım hepsi

74
00:06:06,300 --> 00:06:09,530
küçük harf ve bunu başparmağıyla birlikte artı işaretiyle birlikte parçaladı.

75
00:06:10,080 --> 00:06:16,200
Böylece ilk harfi büyük harfle kullandıktan sonra ilk karakterin ardından gelen her şeyi alıp ikisini birleştirip geri getiriyoruz.

76
00:06:16,200 --> 00:06:21,360
Return anahtar sözcüğünün başka bir yönü de bir işlevin yürütülmesini durdurmasıdır.

77
00:06:21,360 --> 00:06:23,610
Bir şey döndürdükçe işlevi yapılır.

78
00:06:24,360 --> 00:06:29,230
Dolayısıyla bir işlevin tüm noktası, bir çeşit girdi alır ve sonra bir şeyler döndürür.

79
00:06:29,610 --> 00:06:32,900
Bu yüzden döndüğünde işlevin yürütülmesinin sonu budur.

80
00:06:33,240 --> 00:06:37,700
İşte bir örnek:

81
00:06:37,710 --> 00:06:41,440
Bu, küçük bir fark dışında, aynı büyük harfle aynı işlevdir.

82
00:06:41,640 --> 00:06:43,080
Ve bu, girdi türü, sayıya eşitse,

83
00:06:43,110 --> 00:06:47,450
bu satırın yaptığı bir dize yerine bir sayı geçip götürmediğimizi kontrol ediyor, sonra sadece dönüş yapalım, bu bir dize değil.

84
00:06:47,460 --> 00:06:54,100
Bunların hiçbiriyle uğraşmak istemiyoruz.

85
00:06:54,100 --> 00:07:00,020
Bu yüzden dönersek bu dönüş olur ve bir sayı kısa devre yapar ve bu kod hiçbir zaman

86
00:07:00,210 --> 00:07:02,260
L ifadesi olmasa da asla çalışır.

87
00:07:02,340 --> 00:07:08,640
Dolayısıyla bu kod çalıştırılmalıdır.

88
00:07:08,640 --> 00:07:09,990
Aslında hiç çalışmıyor çünkü bu kısa devre yapıyor.

89
00:07:10,140 --> 00:07:11,960
Eğer Paris gibi bir dizede başka bir sayı geçersek bu doğru değildir.

90
00:07:12,000 --> 00:07:15,450
Yani bu return deyimi asla çalıştırılmaz.

91
00:07:15,480 --> 00:07:20,690
Ve sonra bu iade ifadesi yanlış.

92
00:07:20,760 --> 00:07:22,620
Sonunda şunu eklemek istediğim en son şey bir

93
00:07:22,830 --> 00:07:24,990
işlevi bildirmek için iki farklı sözdizimi ve birincisi kullandığımız şeydir.

94
00:07:26,040 --> 00:07:31,170
Buna bir işlev bildirimi denir.

95
00:07:31,380 --> 00:07:35,330
Bu yüzden işleve sonra işlevimizin adını yazarız.

96
00:07:35,340 --> 00:07:37,410
Ardından argümanları gönderir ve işlevler bölümünü iki köşeli parantez içinde yeniden yazarız.

97
00:07:37,980 --> 00:07:41,060
Bir fonksiyon ifadesi olarak adlandırılan bir fonksiyon yazmanın başka bir yolu var.

98
00:07:41,280 --> 00:07:47,220
Ve bunu yapmanın yolu aslında büyük harfli bir değişken yazmamız ve bunu bir işleve eşit olarak ayarladık.

99
00:07:47,250 --> 00:07:50,660
Dolayısıyla, eşdeğer işlevleri tanımlamanın iki yolu vardır.

100
00:07:51,000 --> 00:07:58,560
Bu bir beyan ve bu bir ifade.

101
00:07:59,640 --> 00:08:02,970
Yani işlevi şu şekilde var olan büyük harfli eşitlik fonksiyonunu bildirirsem küçük bir fark var.

102
00:08:02,970 --> 00:08:05,980
Sadece sayıları 10 veya sayı 15'e eşit olarak değiştirmeye karar verdim.

103
00:08:06,270 --> 00:08:13,260
Benim görevim kayboldu.

104
00:08:13,890 --> 00:08:19,970
Bu yüzden ne demek istediğimi göstereceğim.

105
00:08:20,100 --> 00:08:21,720
Bu yüzden bir işlevi var bildirmek için gidiyorum.

106
00:08:22,200 --> 00:08:24,000
Merhaba bir işleve eşit olduğunuzu ve tüm işlevin günlüğü sildiğini söyle.

107
00:08:24,840 --> 00:08:27,260
Merhaba.

108
00:08:27,300 --> 00:08:36,430
Aynen böyle.

109
00:08:37,180 --> 00:08:38,240
Ve böylece demiştim merhaba ve gördüğüm işlev bildirimleriyle aynı şekilde.

110
00:08:38,640 --> 00:08:40,350
Ama yine de selam'ın 34'e eşit olduğuna karar verebilirim.

111
00:08:40,990 --> 00:08:47,550
Şimdi şunu söylersem, merak ettiğimi söyleyemeyeceğim merhaba,

112
00:08:47,910 --> 00:08:54,790
sınıfa ilerledikçe onu bir işlev olarak çalıştıramam.

113
00:08:54,880 --> 00:09:03,690
Deklerasyon ve ifadeler kullanacağız ve ayrıca neden birbiri ardına kullanacağınız hakkında daha fazla

114
00:09:03,690 --> 00:09:04,350
konuşacağız.

115
00:09:04,380 --> 00:09:09,510
&nbsp;

116
00:09:09,510 --> 00:09:10,620
&nbsp;
