1
00:00:00,840 --> 00:00:06,560
다음 몇 개의 비디오에서 우리는 자바 스크립트 루프에 대해 이야기 할 것입니다.

2
00:00:06,570 --> 00:00:08,290
그래서 우리에게는 몇 가지 다른 목표가 있습니다.

3
00:00:08,340 --> 00:00:12,280
첫 번째는 루프를 사용하는 이유와 그 루프를 이해하는 것입니다.

4
00:00:12,300 --> 00:00:19,080
다음은 건조한 코드를 작성하는 이유와 그게 무슨 뜻인지 Diyar라는 약자를 이해하는 것입니다.

5
00:00:19,380 --> 00:00:23,640
마지막으로 간단한 야생 루프를 작성하여 시작할 것입니다.

6
00:00:24,780 --> 00:00:32,720
그래서 여기에 우리가 지금까지 알고있는 것과 다른 줄에 1에서 10까지의 숫자를 인쇄하기를 원한다면 제가 제기 할 문제가 있습니다.

7
00:00:32,820 --> 00:00:47,120
나는 10 가지의 단점을 가지고있다. 로그와 그것은 이미 이상적이 아닙니다. 그러나 1에서 10000 사이의 모든 숫자 또는 처음 백만 개의 숫자를 갑자기 쓰고 싶다면 스스로 많은 코드를 작성해야합니다.

8
00:00:47,370 --> 00:00:48,940
그래서 이것은 루프가 들어오는 곳입니다.

9
00:00:48,960 --> 00:00:55,330
그래서 우리는 실제 생산 어플리케이션에서 1에서 10000까지의 숫자를 인쇄하지 않을 것입니다.

10
00:00:55,470 --> 00:01:04,340
한 장의 사진이나 게시물이 바이러스에 감염된 사진처럼 10000 개의 다른 코멘트를 가질 수있는 Facebook과 같은 예를 들어 봅시다.

11
00:01:04,380 --> 00:01:07,650
그들은 수천, 수천 건의 비평을받습니다.

12
00:01:07,650 --> 00:01:16,290
거기에 별도의 코드 줄이 될 필요가 모든 의견을 대신 페이지의 모든 의견을 인쇄하는 데 사용되는 일종의 루프가 있습니다.

13
00:01:16,320 --> 00:01:24,470
그래서 자바 스크립트에서 야생 루프 구문을보기 전에 저는 마른 코드라는이 개념을 도입하려고합니다.

14
00:01:24,470 --> 00:01:25,910
반복하지 마십시오.

15
00:01:26,190 --> 00:01:33,210
그것은 모든 종류의 프로그래밍 언어에서 많이 던져진 개념이지만, 우리가 코드를 반복하고 싶지 않다는 것입니다.

16
00:01:33,210 --> 00:01:35,540
이 예제를 여기서 살펴 보겠습니다.

17
00:01:35,820 --> 00:01:38,360
이 코드는 매우 반복적입니다.

18
00:01:38,370 --> 00:01:40,690
유일한 차이점은 우리가 인쇄하고있는 번호입니다.

19
00:01:40,980 --> 00:01:43,860
그러나 그렇지 않으면 모든 라인이 동일합니다.

20
00:01:43,860 --> 00:01:47,710
따라서이 코드는 우리가 건조하다고 생각하는 코드가 아닙니다.

21
00:01:47,790 --> 00:01:52,490
어떤 사람들은이 코드를 내가 무슨 코드가 옳은지를 들었다고 생각합니다.

22
00:01:52,500 --> 00:01:55,790
두 번 모두 건조한 소리로 들리는 것이 일반적이지 않습니다.

23
00:01:55,830 --> 00:01:59,000
그래서 우리가 코드를 말라 버릴 수있게 해주는 루프가 무엇입니까?

24
00:01:59,010 --> 00:02:01,040
그것들은 우리가 처리 할 수있는 도구 중 하나입니다.

25
00:02:01,110 --> 00:02:07,690
나중에 배우게 될 다른 것들 중 일부는 배열과 객체의 함수이지만 루프는 가장 기본적인 것입니다.

26
00:02:08,550 --> 00:02:10,840
그래서 우리는 이야기를 시작합니다.

27
00:02:11,100 --> 00:02:18,440
첫 번째 루프는 while 루프이고 while 루프는 IF 구문과 매우 유사한 여러 유형의 루프가 있습니다.

28
00:02:18,690 --> 00:02:33,270
따라서 X가 5보다 작거나 답이 같지 않은 조건을 취한 다음 해당 조건이 true 인 경우 중괄호 집합에 넣는 코드를 반복합니다.

29
00:02:33,480 --> 00:02:43,350
따라서 if 문은 조건이 true 인 동안 while 루프가 코드를 계속 실행하므로 한 번에 실행되는 코드를 반복하지 않는다는 점을 제외하고는 매우 유사합니다.

30
00:02:43,740 --> 00:02:45,020
여기 예제가 있습니다.

31
00:02:45,060 --> 00:02:49,330
이것은 while 루프를 사용하여 1에서 5까지의 숫자를 출력하는 방법입니다.

32
00:02:49,410 --> 00:02:55,020
그래서 우리는 count라는 변수를 시작으로 아무 것도 이름을 지정할 수 없지만 1부터 시작합니다.

33
00:02:55,350 --> 00:03:01,610
그런 다음 카운트가 6보다 작 으면서 while 루프를 만듭니다.

34
00:03:01,650 --> 00:03:05,610
따라서이 코드가 처음으로 실행되는 횟수는 1입니다.

35
00:03:06,000 --> 00:03:07,820
그래서 한 명은 6 명 미만입니다.

36
00:03:07,860 --> 00:03:09,820
그래서 사실입니다.

37
00:03:09,900 --> 00:03:14,340
다음은 while 루프를 사용하여 1에서 5까지의 숫자를 인쇄하는 예제입니다.

38
00:03:14,700 --> 00:03:16,650
그래서 우리는 처음부터 시작합니다.

39
00:03:17,400 --> 00:03:21,410
그래서 우리는 count라는 변수를 초기화함으로써 시작될 수 있습니다.

40
00:03:21,660 --> 00:03:29,360
그리고 우리는 우리의 while 루프를 가지고 있고 구문은 다시 while과 then 조건이됩니다.

41
00:03:29,550 --> 00:03:33,100
이 경우 조건은 6보다 작습니다.

42
00:03:33,120 --> 00:03:36,550
따라서이 루프가 처음으로 실행되는 횟수는 1입니다.

43
00:03:36,780 --> 00:03:39,090
그래서 6 명 중 1 명이 사실입니다.

44
00:03:39,270 --> 00:03:41,310
그러면이 코드가 실행됩니다.

45
00:03:41,970 --> 00:03:49,340
그러면 count를 1로 출력 한 다음 1을 더해서 다시 계산합니다.

46
00:03:49,590 --> 00:03:54,150
그리고 검사는 6보다 적은 숫자입니다.

47
00:03:54,300 --> 00:03:54,980
그건 사실이야.

48
00:03:55,020 --> 00:03:57,990
따라서 다시 인쇄되고 1에 더해집니다.

49
00:03:57,990 --> 00:03:59,310
이제는 세 가지입니다.

50
00:03:59,400 --> 00:04:00,650
이것은 사실입니다.

51
00:04:00,750 --> 00:04:11,010
따라서 3을 세 어서 3을 더하고 4를 더하면 마지막 시간이 5가 될 때까지 5가 6보다 작습니다.

52
00:04:11,040 --> 00:04:13,090
5 번을 인쇄합니다.

53
00:04:13,170 --> 00:04:15,450
우리는 현재 6을 계산하는데 하나를 더합니다.

54
00:04:15,750 --> 00:04:20,600
그리고 나서 다시 뛰기를 시도하고 6이 6보다 적지 않다는 것을 깨닫습니다.

55
00:04:20,880 --> 00:04:23,600
그러면 끝났고 그게 전부입니다.

56
00:04:23,610 --> 00:04:28,530
그래서 나는 앞으로 가서 내 죄책를 열 것이다. 이 코드를 여기에 붙여 넣기 만하면됩니다.

57
00:04:28,530 --> 00:04:29,970
카운트는 1부터 시작합니다.

58
00:04:30,000 --> 00:04:33,530
그것은 야생 카운트가 6 미만으로 실행됩니다.

59
00:04:33,570 --> 00:04:50,230
나는 입력을 치고 지난 번 루프 카운트가 5가 될 때까지 줄곧 1을 카운트 다운했다. 따라서 20을 포함 시키려면 5와 20 사이의 숫자를 프린트하고 싶다면 이것을 약간 변경해 볼 수도있다.

60
00:04:50,230 --> 00:04:55,780
20 또는 21보다 작거나 같게 변경해야합니다.

61
00:04:56,260 --> 00:05:03,710
따라서 나는 20 점 이하의 점수를 얻을 수 있기 때문에 20 점 이하의 점수를 실제로 포함 할 것입니다.

62
00:05:03,760 --> 00:05:08,150
마찬가지로 나는 매번 한 번만 추가하는 것이 아닌 일을 할 수 있습니다.

63
00:05:08,260 --> 00:05:16,590
따라서 두 개 수를 세고 싶다면 단지 더하기 대신 두 개를 더합니다.

64
00:05:16,600 --> 00:05:18,930
그래서 이번에는 5시에 시작합니다.

65
00:05:19,180 --> 00:05:20,530
그런 다음 통과 할 것입니다.

66
00:05:20,530 --> 00:05:21,710
조건은 참입니다.

67
00:05:21,730 --> 00:05:24,340
그것은 Count를 출력하고 그것에 추가합니다.

68
00:05:24,340 --> 00:05:32,690
이제 우리는 7시에 다음 번에 추가되고 5시 9 분 11시 13시 15 분 17 분으로 끝납니다.

69
00:05:33,190 --> 00:05:42,280
따라서 이미 루프를 볼 수있는 것처럼 로그 문에 대한 10 가지 단점이나 로그 문에 대한 15 가지 개념을 갖지 않고 많은 시간을 절약 할 수 있습니다.

70
00:05:42,280 --> 00:05:47,340
우리는 단지 한 번에 반복문을 썼는데, 그것은 우리를 위해 나머지를 처리합니다.

71
00:05:48,640 --> 00:05:59,800
그래서 여기에 또 다른 예가 있습니다. 숫자를 인쇄하는 대신 while 루프를 사용하여 문자열을 반복하고 모든 문자를 개별적으로 출력하므로 출력이 이렇게 보입니다.

72
00:05:59,890 --> 00:06:02,770
혼자만의 삶.

73
00:06:02,800 --> 00:06:03,700
5 살이에요.

74
00:06:03,710 --> 00:06:09,490
콘솔 도트 로그 명령문 및 우리가 hello와 동등한 문자열로 시작하는 방법을 설명합니다.

75
00:06:09,990 --> 00:06:15,650
TR로 불리우며 문자열에있는 문자에 액세스하는 데 사용할 숫자가되는 계정이 있습니다.

76
00:06:15,670 --> 00:06:16,760
그것은 색인입니다.

77
00:06:16,760 --> 00:06:21,200
그리고 첫 번째 문자는 항상 인덱스 0에 있다는 것을 기억합니다.

78
00:06:21,220 --> 00:06:30,090
그러면 count가 문자열의 길이보다 작 으면서 길이가 1 2 3 4 또는 5가되는 동안 우리가해야 할 일은 말할 것입니다.

79
00:06:30,430 --> 00:06:38,710
숫자가 5보다 작 으면 문자열에 count를 더한 문자를 출력합니다.

80
00:06:38,740 --> 00:06:42,060
그럼 그게 내가 영사를 열어서이 일을 밟을 수 있다는 것을 의미하지.

81
00:06:42,070 --> 00:06:44,430
여기 이걸 시작합니다.

82
00:06:44,500 --> 00:06:49,450
String은 hello와 같습니다. Vark 카운트는 0입니다.

83
00:06:50,230 --> 00:06:55,480
따라서 while 루프를 복사하는 것보다 먼저 어떻게 작동하는지 보여주는 것으로 시작할 것입니다.

84
00:06:55,480 --> 00:07:01,710
따라서 count는 문자열 길이보다 짧고 문자열 길이는 5입니다.

85
00:07:01,750 --> 00:07:03,760
그래서 0은 5보다 작습니다.

86
00:07:03,820 --> 00:07:04,620
사실입니다.

87
00:07:04,840 --> 00:07:09,330
로그 문자열 괄호 수를 취소 할 것입니다.

88
00:07:09,370 --> 00:07:13,180
그래서 그것은 우리에게 h를주는 0의 문자열이 될 것입니다.

89
00:07:13,480 --> 00:07:18,610
그런 다음 카운트에 +1을 더하여 더하기 + 더하기를 더합니다.

90
00:07:18,610 --> 00:07:20,780
이제 1이 1입니다.

91
00:07:21,070 --> 00:07:27,280
그래서 우리는 이것을 다시 반복합니다. 문자열 길이보다 작은 것은 5보다 작습니다.

92
00:07:27,670 --> 00:07:28,340
예.

93
00:07:28,480 --> 00:07:30,380
이제 우리는이 행을 다시합니다.

94
00:07:30,430 --> 00:07:34,150
콘솔 도트 로그 카운트 및 카운트 문자열이 이제 1이됩니다.

95
00:07:34,150 --> 00:07:35,210
그래서 우리는 그것을 얻는다.

96
00:07:35,440 --> 00:07:46,910
그래서 이것은 마지막 시간까지 인쇄물을 계속 보냅니다. 그리고 우리는 5를 5로 계산하고 5를 5보다 작게 계산합니다.

97
00:07:46,930 --> 00:07:49,050
그래서 그 고리는 끝났어.

98
00:07:49,060 --> 00:07:53,940
길이는 항상 문자열의 가장 높은 색인보다 하나 큰 것을 기억하십시오.

99
00:07:54,370 --> 00:08:03,670
따라서 길이는 5 자이지만 최대 인덱스는 4이므로 0 1 2 3 0은 인덱스 4에 있기 때문입니다.

100
00:08:03,730 --> 00:08:08,490
그래서 루프를 사용하여 문자열의 모든 문자를 출력 할 수 있습니다.

101
00:08:09,820 --> 00:08:14,740
따라서 AUP에 대해주의해야합니다. 무한 루프라는 것을 만들 수 있다는 것입니다.

102
00:08:14,740 --> 00:08:16,160
우리가 조심하지 않으면.

103
00:08:16,220 --> 00:08:21,260
무한 루프는 우리가 제공하는 조건이 결코 거짓 일 때 발생합니다.

104
00:08:21,430 --> 00:08:26,680
그래서 계속해서 계속 가고, 영원히 가고 있습니다. 그리고 이것들은 분명히 문제가 있습니다.

105
00:08:26,710 --> 00:08:28,290
그들은 브라우저를 뭉개 버릴 수 있습니다.

106
00:08:28,300 --> 00:08:30,210
그들은 자바 스크립트의 모든 메모리를 차지합니다.

107
00:08:30,370 --> 00:08:32,510
그것은 당신이하고 싶은 일이 아닙니다.

108
00:08:32,740 --> 00:08:35,840
여기에 어떻게 일어날 지에 대한 예가 있습니다.

109
00:08:36,040 --> 00:08:44,360
우리는 0과 같은 카운트를 가지고 있고, 그리고 나서 와우 카운트는 로그 카운트가 취소 된 10보다 적음을 의미합니다.

110
00:08:44,710 --> 00:08:49,540
우리가 카운트를 바꿀 수는 없으므로 카운트는 항상 10보다 작습니다.

111
00:08:49,930 --> 00:08:52,970
따라서 결코 증가하지 않는 것은 10 세 이상이 될 수 없습니다.

112
00:08:53,050 --> 00:08:55,420
따라서 영원히 영원히 인쇄됩니다.

113
00:08:55,540 --> 00:08:59,550
그래서 이렇게하지 않는 것이 좋지만 복사하여 콘솔에 붙여 넣을 수는 있습니다.

114
00:08:59,620 --> 00:09:02,830
그리고 여러분이 보게 될 것은 시작할 때 많은 수의 0을 인쇄 할 것입니다.

115
00:09:03,010 --> 00:09:12,910
그리고 현재는 대부분의 브라우저를 무한대로 실행하는 것이 아니라 실제로 멈추고 실행중인 무한 루프가 작성된 나쁜 코드가 있음을 경고합니다.

116
00:09:12,940 --> 00:09:16,080
그래서 이것을 이와 같은 루프와 대조하십시오.
