return / break / continue
🔽 return
-
반복문을 종료 시키기도 하지만 값을 반환하고 함수 자체를 종료
-
함수에서 사용하지 않으면 에러가 발생
⇒ 함수는 return을 사용하지 않아도 항상 값을 반환함 (기본값은 undefined)const number = () => { for (let i = 0; i < 10; i++ ) { if(i===5) { return i; } console.log(i) } } console.log('종료') number() // 0 , 1 , 2 , 3 , 4 , 종료
🔽 break
-
반복문을 더 이상 진행하지 않아도 될 때 불필요한 반복을 회피할 수 있어서 유용
-
레이블문(식별자가 붙은 문), 반복문(for, for...in, for...of, while, do...while), switch문의 코드 블록 탈출
=> 그 외에 break문을 사용하면 SyntaxError(문법 에러) 발생if(true) { break; //SyntaxError }
레이블문 ?
-
중첩된 for문 외부로 탈출할 때 유용 ( 그 외는 권장X)
foo: { console.log(1); break foo; //foo 레이블 블록문을 탈출. console.log(2); }
outer : for (lse i = 0; i < 3; i++) { for (let i = 0; i < 3; i++) { if (i + j === 3) break outer; } }
예) 문자열에서 해당 문자가 처음 있는 인덱스 찾기
const string = 'Hello World' let index; for(let i = 0; i < string.length; i++) { if(string[i] === 'l') { index = i; break; } } // 2
🔽 continue
-
특정 조건이 주어졌을 때, 조건에 만족하면 명령을 건너뛰고 다음으로 넘어감
-
반복문의 코드 블록 실행을 현 지점에서 중단하고 반복문의 증감식으로 실행 흐름을 이동
예) 문자열에서 해당 문자가 몇개나 있는지 카운트
const string = 'Hello World' let index; for(let i = 0; i < string.length; i++) { if(string[i] !== 'l') continue; count++ //만약 문자열에 l이 없으면 이 줄이 실행되지 않고 i++로 진행 } } // 3
-
continue문을 안쓸수도있지만,
사용했을 경우 실행코드가 많다면 if문 밖에서 사용하는게 가독성이 좋음```jsx for (let i = 0; i < string.length; i++) { if(string[i] === search) { count++; //코드 //코드 //코드 } } ``` ```jsx 🌟 for (let i = 0; i < string.length; i++) { if(string[i] !== search) continue; count++; //코드 //코드 //코드 } ```
공부하며 정리&기록하는 ._. 씅로그
Author And Source
이 문제에 관하여(return / break / continue), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@sseung-i/return-break-continue저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)