[ES6] 18. while()
while() 문은 지속적인 while()로 인해서 조건이 거짓이 되게끔 반복할때 쓰인다.
let i = 1;
while (i <= 5) {
console.log(i);
i++;
}
while() 문은 조건식이 참(true)인 동안 반복됩니다. while()문은 특정 횟수만큼 반복하는 것이 아니라, 조건이 참인 동안 계속 반복되기 때문에, 반복의 횟수에 제한이 없습니다. 따라서 반복문 충족되는 조건 자체가 없으면 무한 반복에 빠질 수 있으므로 주의가 필요합니다. 이것은 조건식이 false가 되기 전까지 계속 반복합니다.
다음은 while()문에 대한 예시 코드입니다.
```
let num = 1;
while (num <= 5) {
console.log(num);
num++;
}
```
위 코드에서, 변수 num는 초기값으로 1을 가지며, while()문은 num이 5보다 작거나 같은 동안 반복됩니다. num이 5가 될 때까지 반복문을 실행하며, num이 1, 2, 3, 4, 5가 순서대로 콘솔에 출력됩니다.
while()문은 다음과 같이 무한 반복되게 사용될 수 있습니다.
```
while (true) {
console.log('무한반복!');
}
```
위 코드에서, while()문의 조건식은 항상 참(true)이므로, 무한 반복문이 생성됩니다. 이것은 위험한 코드이므로, 주의가 필요합니다.
while()문은 루프 횟수에 제한이 없기 때문에, 특정 조건에 도달할 때까지 실행되도록하여 코드를 최적화하는 데 유용합니다. 하지만, 무한 반복에 빠질 위험이 있기 때문에, 코드 작성시 주의해야 합니다.
do...while문,
do...while문은 while문과 비슷하지만, 반복문의 조건식 검사를 마지막으로 수행되며, 적어도 한 번은 실행됩니다. 즉, 조건식이 거짓(false)이더라도 최소한 한 번은 코드 블록이 실행됩니다.
다음은 do...while문에 대한 예시 코드입니다.
```
let count = 0;
do {
console.log(count);
count++;
} while (count < 5);
```
위 코드에서, 변수 count는 초기값으로 0을 가지며, do...while문은 코드 블록을 한 번 실행하고, count가 5보다 작은 동안 반복
for , if ,continue을 이용한 코드,
for (let i = 1; i <= 5; i++) {
if (i == 3) {
continue;
}
console.log(i);
}
while 에서, continue를 쓰면,
if문이 조건이 맞고 continue는 밑으로만 내려가는것을 막는다. break는 완전히 종료하는것을 뜻한다.
continue를 만나면 뒤로 간다 이렇게 생각하자.
for , if ,else, continue, document.write을 코드를 이용해서 복잡한 funtion 문 만들어보기
function calculateGrade(score) {
if (typeof score !== "number" || isNaN(score)) {
// 인수의 유효성 검사 절대값으로 두개다 맞아야 실행된다.
//숫자 이외의것을 입력하면 실행안되는문구가 나온다.
document.write("Please enter a valid score.");
return;
}
let grade;
if (score >= 90) {
grade = "A";
} else if (score >= 80) {
grade = "B";
} else if (score >= 70) {
grade = "C";
} else if (score >= 60) {
grade = "D";
} else {
grade = "F";
}
if (grade === "F") {
document.write("Sorry, you failed the course.");
// 미달인경우,
} else {
document.write(
"Congratulations, you passed the course with a grade of " + grade
);
// F이상의 학점으로 합격한경우
}
}
calculateGrade(10);
// Output: Please enter a valid score.
10인경우,
라고 나온다.
'컴퓨터공부 > Javascript' 카테고리의 다른 글
[ES6] 20. pop, push , shift , unshift, for of (0) | 2023.05.31 |
---|---|
[ES6] 19. 배열(Array) 객체에서 객체에 불리언(`{}`)이나 함수(`function() {}`), 실습 (0) | 2023.05.30 |
[ES6] 17. funtion if else return (0) | 2023.05.29 |
[ES6] 16. js ==, === 차이점 (0) | 2023.05.28 |
댓글