1
00:00:00,840 --> 00:00:06,560
Birkaç videoda tekrar javascript döngülerini tartışacağız.

2
00:00:06,570 --> 00:00:08,290
Dolayısıyla birkaç farklı hedefimiz var.

3
00:00:08,340 --> 00:00:12,280
Birincisi, ilmekleri ve neden olduklarını anlamaktır.

4
00:00:12,300 --> 00:00:18,120
Birincisi, Kuraklığın bir Kısaltma Diyar olduğunu anlamaktır, bunun nedeni ne demek ve kuru

5
00:00:18,120 --> 00:00:19,080
kod yazmaktır.

6
00:00:19,380 --> 00:00:23,640
Ve son olarak, başlamak için bazı basit vahşi döngüler yazacağız.

7
00:00:24,780 --> 00:00:30,360
Bu yüzden, burada şimdiye kadar bildiklerimizle, her birinde 1'den 10'a kadar sayıları farklı bir satıra

8
00:00:30,360 --> 00:00:32,720
yazdırmasını istersem, ortaya koyacağımız bir sorun var.

9
00:00:32,820 --> 00:00:39,810
10 farklı eksiğim olurdu. günlükler ve zaten ideal değil ama ne yapsaydım,

10
00:00:39,810 --> 00:00:45,930
1 ile 10000 arasındaki her sayıyı veya ilk milyonları aniden kendim bir sürü kod

11
00:00:45,930 --> 00:00:47,120
yazmak zorunda kaldım.

12
00:00:47,370 --> 00:00:48,940
Dolayısıyla bu döngüler içeri giriyor.

13
00:00:48,960 --> 00:00:54,990
Dolayısıyla, gerçek bir üretim uygulamasında sayıları 1 ila 10000 arasında yazdırmamıza rağmen.

14
00:00:55,470 --> 00:01:01,710
Tek bir fotoğrafın ya da yayının, viral görünen fotoğraflar gibi 10000 farklı

15
00:01:01,710 --> 00:01:04,340
yorum yapabileceği bir örnek alalım.

16
00:01:04,380 --> 00:01:07,650
Sahnelerin arkasında binlerce ve binlerce yorum var.

17
00:01:07,650 --> 00:01:12,600
Ayrı bir kod satırına ihtiyaç duyan her açıklama yerine sayfadaki tüm

18
00:01:12,600 --> 00:01:16,290
yorumları yazdırmak için kullanılan bir çeşit ilmek var.

19
00:01:16,320 --> 00:01:22,230
Bu nedenle, javascript'teki vahşi döngüler sözdizimini görmeden önce kuru kod olarak adlandırılan bu kavramı

20
00:01:22,230 --> 00:01:24,470
tanıtmak istediğim için kuru duruyor.

21
00:01:24,470 --> 00:01:25,910
Kendini tekrar etme.

22
00:01:26,190 --> 00:01:30,990
Bu, her tür programlama dilinde çok şey etrafında atılan bir konsepttir, ancak

23
00:01:30,990 --> 00:01:33,210
şu ki bizim kodumuzu tekrarlamak istemiyoruz.

24
00:01:33,210 --> 00:01:35,540
Bu örneğe bir göz atarsak, burada.

25
00:01:35,820 --> 00:01:38,360
Bu kod çok tekrarlayıcı.

26
00:01:38,370 --> 00:01:40,690
Tek fark, yazdırdığımız sayı.

27
00:01:40,980 --> 00:01:43,860
Ama aksi takdirde her satır aynıdır.

28
00:01:43,860 --> 00:01:47,710
Dolayısıyla bu kod kuru göz önüne almamız gereken şey değildir.

29
00:01:47,790 --> 00:01:52,490
Bazı insanlar bunu, hangi kodun doğru olduğunun duyduklarımı ıslak olarak adlandırabilir.

30
00:01:52,500 --> 00:01:55,790
Her şey iki kat daha kuru olsa da duymak için yaygın değildir.

31
00:01:55,830 --> 00:01:59,000
Dolayısıyla, döngüler ne yapar, bizim kodumuzu kurmamıza izin veriyorlar.

32
00:01:59,010 --> 00:02:01,040
Bunlar elimizdeki araçlardan biridir.

33
00:02:01,110 --> 00:02:05,850
Daha sonra öğreneceğimiz diğer bazıları dizilerdeki ve nesnelerdeki işlevlerdir ancak

34
00:02:05,850 --> 00:02:07,690
döngüler en temel olanlardır.

35
00:02:08,550 --> 00:02:10,840
Bu yüzden hakkında konuşarak başlayacağız.

36
00:02:11,100 --> 00:02:16,760
Birincisinin while döngüsü ve while döngüsü bir IF deyimine çok benzer olduğunu görecek birden

37
00:02:16,800 --> 00:02:18,440
fazla ilme türü vardır.

38
00:02:18,690 --> 00:02:27,960
Bu durumda, X'in beşten az olması ya da eşit olmaması gibi bir koşul alır ve ve bu

39
00:02:28,290 --> 00:02:33,270
koşul doğruyken, kıvırcık parantez kümesine koyduğumuz kodu tekrar eder.

40
00:02:33,480 --> 00:02:39,180
çalıştırdığı kodu tekrar etmez, while döngüsü koşul doğru olduğu sürece kodu çalıştırmaya devam eder.

41
00:02:39,180 --> 00:02:43,350
Yani bir if deyimi çok benzer ancak yalnızca bir kerede

42
00:02:43,740 --> 00:02:45,020
İşte bir örnek:

43
00:02:45,060 --> 00:02:49,330
Birden fazla döngü kullanarak 1'den 5'e kadar sayıları nasıl yazdırabiliriz.

44
00:02:49,410 --> 00:02:55,020
Böylece, count adındaki bir değişkene, herhangi bir ad verilebilir, ancak sayım 1'de başladı.

45
00:02:55,350 --> 00:03:01,610
Sonra, while döngüsümüz 6'dan küçük sayılan bir koşulla donatılmıştır.

46
00:03:01,650 --> 00:03:05,610
Bu kodun ilk çalıştırıldığı sayım 1'e eşittir.

47
00:03:06,000 --> 00:03:07,820
Yani biri altıdan az.

48
00:03:07,860 --> 00:03:09,820
Bu yüzden bu doğru.

49
00:03:09,900 --> 00:03:14,340
Yani, 1'den 5'e sayıları yazdırmak için bir while döngüsü kullanma örneği.

50
00:03:14,700 --> 00:03:16,650
Yani başlangıçta başlıyoruz.

51
00:03:17,400 --> 00:03:21,410
Böylece count denilen bir değişkeni başlatarak başlıyoruz count denilen her şey olabilir.

52
00:03:21,660 --> 00:03:29,160
Ve biz, while döngüsüne sahip olduktan sonra sözdizimi tekrar ve sonra bir koşul olarak başladık.

53
00:03:29,550 --> 00:03:33,100
Bu durumda durum 6'dan az sayıdadır.

54
00:03:33,120 --> 00:03:36,550
Dolayısıyla bu döngü sayımı ilk kez 1 olur.

55
00:03:36,780 --> 00:03:39,090
Yani altıdan biri doğrudur.

56
00:03:39,270 --> 00:03:41,310
Bu durumda bu kod çalıştırılır.

57
00:03:41,970 --> 00:03:49,340
Böylece sayım 1 basacak ve daha sonra sayıma 1 eklenecek ve sonra tekrar geçecektir.

58
00:03:49,590 --> 00:03:54,150
Ve kontrol sayısı 6'dan az olmasıdır.

59
00:03:54,300 --> 00:03:54,980
Bu doğru.

60
00:03:55,020 --> 00:03:57,990
Böylece tekrar basar ve sayıma 1 eklenir.

61
00:03:57,990 --> 00:03:59,310
Şimdi üç.

62
00:03:59,400 --> 00:04:00,650
Bu yine doğrudur.

63
00:04:00,750 --> 00:04:08,910
Böylece, sayılan üç sayıyı yazdırır, bu sayı dört olarak sayılır ve son zaman sayısı beş beş altı olana

64
00:04:09,420 --> 00:04:11,010
kadar devam eder.

65
00:04:11,040 --> 00:04:13,090
Beşinci sayı yazdık.

66
00:04:13,170 --> 00:04:15,450
Şu anda altı olan sayıma bir tane ekliyoruz.

67
00:04:15,750 --> 00:04:20,600
Ve sonra tekrar koşmaya çalışıyor ve altı altıdan az olmadığını fark ediyor.

68
00:04:20,880 --> 00:04:23,600
Öyleyse bitti ve işte bitti.

69
00:04:23,610 --> 00:04:28,530
Bu yüzden devam edip kahretsin. ve bu kodu çalıştırmak sadece buraya yapıştırın.

70
00:04:28,530 --> 00:04:29,970
Sayım 1'den başlar.

71
00:04:30,000 --> 00:04:33,530
Vahşi sayı altıdan az çalışır.

72
00:04:33,570 --> 00:04:41,110
etmek istersem, beş ile 20 arasında sayıları basmak istersem bunu da biraz değiştirmeyi deneyebilirdim.

73
00:04:41,110 --> 00:04:49,090
Girişe bastım ve bir döngü sayımı beş olana kadar geçen süre 1 sayım yaptım, 20'yi

74
00:04:49,090 --> 00:04:50,230
de dahil

75
00:04:50,230 --> 00:04:55,780
Bunu, 20'ye eşit veya 21'e eşit veya daha düşük olması için değiştirmem gerekecek.

76
00:04:56,260 --> 00:05:03,710
Bu yüzden daha az veya eşit yapacağım ve 20'den beşe kadarını görebileceğin üzere aslında 20'yi içereceğim.

77
00:05:03,760 --> 00:05:08,150
Benzer şekilde, her seferinde bir tane eklemediğim şeyler de yapabilirim.

78
00:05:08,260 --> 00:05:16,590
Bu yüzden, iki sayıya kadar saymak istersem, sadece sayı ekleyerek değil, iki sayıya eşit sayı yazarım.

79
00:05:16,600 --> 00:05:18,930
Bu sefer 5'de başlayacak.

80
00:05:19,180 --> 00:05:20,530
Sonra geçer.

81
00:05:20,530 --> 00:05:21,710
Durum doğrudur.

82
00:05:21,730 --> 00:05:24,340
Kontu basar ve ekler.

83
00:05:24,340 --> 00:05:32,150
Şimdi yedi yaşındayız ve bir dahaki sefere ekliyor vb. Bu noktada sona ereceğiz 5 7 9 11 13:15 1719.

84
00:05:33,190 --> 00:05:38,440
Muhtemelen zaten bir döngü, günlük ifadeleri hakkında 10 farklı eksene sahip olmaktan veya günlük ifadeleri

85
00:05:38,650 --> 00:05:42,280
hakkında 15 Konst olmaktan çok zaman kazanmamıza yardımcı olabilir görebilirsiniz.

86
00:05:42,280 --> 00:05:47,340
Biz sadece bir kerede onu bir döngüde yazdık ve geri kalanını bizim için halletti.

87
00:05:48,640 --> 00:05:54,040
Bu yüzden başka bir örnek veriyorum, burada yalnızca sayıları yazdırmak yerine, bir döngü kullanarak

88
00:05:54,040 --> 00:05:59,800
bir dizgeyi döngüye çıkarıyor ve çıktı her şeye ayrı olarak basarak çıktı böyle görünüyor.

89
00:05:59,890 --> 00:06:02,770
H E L L O N N ayrı yaşamları.

90
00:06:02,800 --> 00:06:03,700
Bu beş.

91
00:06:03,710 --> 00:06:09,100
konsol nokta günlük tablolarını ve elde ettiğimiz yolu, dizgemizle merhaba eşit olarak başlarız.

92
00:06:09,990 --> 00:06:15,070
Buna TR adı verilir, o zaman hesaplarımızda, dizgedeki bir karaktere erişmek için kullanacağımız

93
00:06:15,070 --> 00:06:15,650
hesaplar var.

94
00:06:15,670 --> 00:06:16,760
Endeks bu.

95
00:06:16,760 --> 00:06:21,200
Ve ilk karakterin daima 0 dizininde olduğunu hatırlıyorum.

96
00:06:21,220 --> 00:06:27,820
daha kısa olmasına rağmen uzunluğun bir iki üç dört veya beş olduğunu söylemek.

97
00:06:27,820 --> 00:06:30,090
Öyleyse yapacağımız şey, sayımın uzunluğundan

98
00:06:30,430 --> 00:06:37,780
Sayma 5'den az olsa da Dizgenin sayısını ekle karakteriyle

99
00:06:37,810 --> 00:06:38,710
basacağız.

100
00:06:38,740 --> 00:06:42,060
Bunun anlamı, Konsolosluğumu açıp bunu adım adım atacağım anlamına geliyor.

101
00:06:42,070 --> 00:06:44,430
Buraya bunu başlıyoruz.

102
00:06:44,500 --> 00:06:49,450
Dize merhaba eşit Vark sayıları sıfır.

103
00:06:50,230 --> 00:06:55,090
Dolayısıyla while döngüsünü kopyalamaktan çok, sadece nasıl çalıştığını göstermekle başlayacağım.

104
00:06:55,480 --> 00:07:01,710
Sayım, dize uzunluğundan az iken, dize uzunluğu beştir.

105
00:07:01,750 --> 00:07:03,760
Yani 0, 5'in altında.

106
00:07:03,820 --> 00:07:04,620
Bu doğru.

107
00:07:04,840 --> 00:07:09,330
Bu günlük dizisi ayraç sayısını iptal edeceğiz.

108
00:07:09,370 --> 00:07:13,180
Bu bize sıfır olan bir dizi sıfır olacak.

109
00:07:13,480 --> 00:07:18,610
Ve sonra count plus artı saymak için bir tane ekledik.

110
00:07:18,610 --> 00:07:20,780
Şimdi sayı 1'dir.

111
00:07:21,070 --> 00:07:27,280
Bu yüzden tekrarlarız dize uzunluğundan azdır beşten bir azdır.

112
00:07:27,670 --> 00:07:28,340
Evet.

113
00:07:28,480 --> 00:07:30,380
Şimdi bu çizgiyi tekrar yapacağız.

114
00:07:30,430 --> 00:07:34,150
sayı ve sayımın konsol nokta günlüğü dizesi şimdi 1'dir.

115
00:07:34,150 --> 00:07:35,210
Öyleyse anlıyoruz.

116
00:07:35,440 --> 00:07:43,210
Yani bu son zamana kadar ya da bir çıktıya kadar devam ediyor Oh ve biz 5'e eşit olan

117
00:07:43,210 --> 00:07:46,910
ve 5'e eşit olan sayımı 1 olarak ekliyoruz.

118
00:07:46,930 --> 00:07:49,050
Yani döngü bitti.

119
00:07:49,060 --> 00:07:53,940
Uzunluğun her zaman bir dizgenin en yüksek indeksinden bir büyük olduğunu unutmayın.

120
00:07:54,370 --> 00:08:02,440
beş karakterdir, ancak maksimum indeks dörttür çünkü 0'dan başlayalım 2 3 0 endekste 4'tür.

121
00:08:02,440 --> 00:08:03,670
Yani uzunluk

122
00:08:03,730 --> 00:08:08,490
Dize içindeki her karakteri yazdırmak için bir döngüyü nasıl kullanabildiniz yani.

123
00:08:09,820 --> 00:08:14,740
Dolayısıyla birisi çılgınca AUP'lara dikkat etmeliyiz, sonsuz bir döngü adı verilen bir şey yaratabiliriz.

124
00:08:14,740 --> 00:08:16,160
Eğer dikkatli değilsek.

125
00:08:16,220 --> 00:08:21,260
Dolayısıyla, verdiğimiz koşul yanlış olmadığında sonsuz bir döngü oluşur.

126
00:08:21,430 --> 00:08:26,680
Dolayısıyla devam ediyor ve devam ediyor ve sonsuza dek gidiyor ve bunlar açıkça sorunludur.

127
00:08:26,710 --> 00:08:28,290
Bir tarayıcı ezebilirler.

128
00:08:28,300 --> 00:08:30,210
Javascriptdeki tüm belleği ele alıyorlar.

129
00:08:30,370 --> 00:08:32,510
Bu şimdiye kadar yapmak istemediğin bir şey değil.

130
00:08:32,740 --> 00:08:35,840
İşte böyle birinin nasıl gerçekleşeceğine ilişkin bir örnek.

131
00:08:36,040 --> 00:08:43,870
Sayımı sıfıra eşit saydık ve sonra wow sayımının 10'dan az olduğunu ve günlük sayımını iptal ettiğini söyledik.

132
00:08:44,710 --> 00:08:49,540
İyi sayım daima 10'dan küçük çünkü sıfır ve sayıyı asla değiştirmiyoruz.

133
00:08:49,930 --> 00:08:52,970
Bu yüzden artan asla 10'un üzerinde olmayacak.

134
00:08:53,050 --> 00:08:55,420
Yani bu sonsuza dek sıfır basacaktır.

135
00:08:55,540 --> 00:08:59,550
Bu yüzden bunu yapmanızı tavsiye etmiyorum, ancak bunu kopyalayıp konsolunuza yapıştırabilirsiniz.

136
00:08:59,620 --> 00:09:02,830
Ve göreceğiniz şey, başlaması için bir ton sıfır basacaktır.

137
00:09:03,010 --> 00:09:08,440
Ve bugünlerde sonsuza kadar çalıştırmaktan çok, günümüzde çoğu tarayıcıyı durdurup, çalışan

138
00:09:08,440 --> 00:09:12,910
bazı sonsuz döngülerin yazılı bazı kötü kod olduğunu bildiririz.

139
00:09:12,940 --> 00:09:16,080
Dolayısıyla, bunu sadece bir döngü ile karşılaştırmak için.

140
00:09:16,240 --> 00:09:23,140
Bu durumu bir noktada yapmak zorunda olduğumuz bir artış sayımız var, yanlış yaparsak yanlış olacağız, yoksa bu

141
00:09:23,140 --> 00:09:25,880
gibi burada sonsuza dek koşmaya devam edecektir.
