728x90
반응형
자바스크립트에서는 0이 Boolean 값으로 변환될시 false가 되는 특성을 가지고 있습니다.
다음과 같은 예시코드로 확인할 수 있습니다.
const x = 0;
console.log("Number : " + Number(x)); // 0
console.log("String : " + String(x)); // 0
console.log("Boolean: " + Boolean(x)); // false
const y = 1;
console.log("Number : " + Number(y)); // 1
console.log("String : " + String(y)); // 1
console.log("Boolean: " + Boolean(y)); // true
이 특성을 이용해서 while 구문으로 n번 실행되는 반복문을 만들어보겠습니다.
function test(n){
while(n--){
console.log(n,"실행")
}
}
test(3);
// 실행결과
// 2 '실행'
// 1 '실행'
// 0 '실행'
while은 조건이 true일때까지 무한루프를 실행합니다.
이때 후위 감소연산자 n--가 함수의 인자로 받은 값을 1씩 감산해 나갑니다.
그러다가 위에서 보다시피 0이 되면 false가 반환되어 무한루프는 종료되고 함수는 실행을 멈추게 되는 원리입니다.
※ 참고
이때 n--로 후위 감소연산자를 사용해야 n회 실행됩니다.
만약 --n로 전위 감소연산자를 사용하면 n-1회 실행됩니다.
그 이유는 다음 링크를 참고해주세요.
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Decrement
감소 연산자 (--) - JavaScript | MDN
감소(--) 연산자 는 피연산자를 감소(1을 뺌)시키고 연산자의 위치에 따라 감소하기 전이나 후의 값을 반환합니다.
developer.mozilla.org
반응형
'JavaScript' 카테고리의 다른 글
[JS] "10"와 "15"중 큰 수는 ? - 문자열 크기 비교에 대해서 (0) | 2023.10.06 |
---|---|
JS 형변환에 대해서 (0) | 2023.10.06 |
자바스크립트 객체와 클래스 관련 용어정리 (0) | 2023.09.26 |
[JS] 인스턴스란 대체 뭘까? (0) | 2023.09.13 |
[JS완벽가이드] 객체와 프로토타입 (0) | 2023.09.13 |
댓글