티스토리 뷰

JavaScript

[JavaScript] The while Loop

Dongi 2021. 9. 28. 09:49

안녕하세요. 동기 여러분! for 반복문을 배워 봤으니 while도 알아보아야겠죠? 오늘은 while 반복문을 파이썬 while문과 비교해보는 시간을 가지도록 하겠습니다.

 

The While Loop

반복문 하면 for와 while이 사용되는데, 언제 for를 쓰고 언제 while을 쓸까요?

 

Khan academy에서는 이렇게 대답하고 있습니다. for와 while은 모두 반복문에서 사용이 될 수 있고, 더 적절하게 보이는 곳에 사용하면 됩니다.

일반적으로, 얼마만큼 반복을 할지 횟수를 알고 있다면 for문을 사용하고, 반복문이 횟수보다는 컨디션(Boolean 같은 데이터 타입)에 따라 얼마나 반복할지 정해진다면 while문을 사용합니다.

Khan Academy : https://support.khanacademy.org/hc/en-us/articles/203327020-When-do-I-use-a-for-loop-and-when-do-I-use-a-while-loop-in-the-JavaScript-challenges-
 

When do I use a for loop and when do I use a while loop in the JavaScript challenges?

All for loops can be written as while loops, and vice-versa. Just use whichever loop seems more appropriate to the task at hand. In general, you should use a for loop when you know how many times ...

support.khanacademy.org

 

오호 그렇군요! 그럼 예제를 통해 알아볼까요?

 

예제

RPG 게임을 하는데, 아이템을 강화할 때까지 강화를 돌리는 코드를 만들어 볼게요! 확률은 50%입니다.

 

  • JavaScript

  1. upgradeItem이라는 배열(Array)을 선언해주고 객체로는 '강화 성공', '강화 실패' 두 가지만 넣었습니다.
  2. result라는 빈 변수를 선언해주고 (여기에 값을 넣어 줄 거예요.)
  3. while result'강화 성공'과 같지 않다면(이 말은 '강화 성공'이 나올 때까지랑 같음)
  4. result안에 upgradeItem의 객체를 인덱스 번호가 나온 숫자의 값(index 0 = '강화 성공', index 1 = '강화 실패')으로 넣어줘 // 여기서 Math.random은 0부터 1까지의 부동소수점의 난수를 생성 // Math.floor 소수점 이하를 버린다. // 고로 저기서 인덱스 번호는 0과 1밖에 나오지 않습니다.
  5. result를 출력해줘 // 두 번 실패하고 성공했다고 나오네요! 실행할 때마다 무작위로 나옵니다.

 

  • Python

PythonJavaScript와는 다르게 random 모듈을 불러와서 randint() 함수를 호출하여 만들어 주었습니다. 

 


 

오늘의 느낌

이제 슬슬 복잡해지기 시작하는데 포스팅 시간도 좀 더 오래 걸리는 거 같네요. 예전에 파이썬을 배울 때는 복습 없이 그냥 강의에 나오는 내용만 쭉쭉 보면서 진도를 나갔는데 그렇게 공부를 하니까 제가 머리가 안 좋기도 하고 완전 다 까먹어서 기억이 가물가물... 구글링 해보면 쉽게 찾을 수 있지만 제 자신이 정리한 건 다시 보면 금방 금방 떠올라서 좋은 거 같아요! 아무래도 글을 써 내려갈 때 고민도하고 막히기도 하고 그래서 그런가 ㅎㅎㅎ 암튼 다음 시간에 봅시다. 안뇽!

'JavaScript' 카테고리의 다른 글

[JavaScript] The break Keyword  (0) 2021.09.30
[JavaScript] Do...While Statements  (0) 2021.09.29
[JavaScript] Nested Loops  (0) 2021.09.27
[JavaScript] Looping through Arrays  (0) 2021.09.26
[JavaScript] The For Loop  (0) 2021.09.26
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함