어제보다 뭐라도 더 알자

공부를 정리하고, 재사용하기 위한 블로그입니다. 잘못된 부분이있다면 댓글로 알려주세요~~

자바 스크립트 공부/프로그래머스 코딩테스트

자바스크립트 return, break의 차이점

chord 2022. 9. 4. 15:08
320x100

https://school.programmers.co.kr/learn/courses/30/lessons/87389

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

저의 풀이

function solution(n) {
let answer = 0;

let arrN = [];
for (let i = 0; i <= n; i++) {
  arrN.push(i);
}

for (let i = 0; i < arrN.length; i++) {
  if (n % arrN[i] === 1) {
    answer = i;
    break;
  }
}
return answer;
}

n을 나눌 숫자들을 배열로 만들고 n나누기 배열의 숫자 했을때 나머지가 1인 배열의 숫자를 리턴하면 되겠다라고 생각했습니다.


let arrN = [];
for (let i = 0; i <= n; i++) {
  arrN.push(i);
}

반복문으로  0부터 n까지의 숫자가 있는 배열을 만들고

for (let i = 0; i < arrN.length; i++) {
  if (n % arrN[i] === 1) {
    answer = i;
    break;
  }
}

반복문을 사용해서 

n을 배열의 숫자들 나눈 나머지가 1이면  answer = i 를 선언하고 반복문을 종료했습니다.

break한 이유는 가장 작은 자연수를 찾아야해서입니다.

다른 분들의 풀이

const solution = function(n) {
    for (let i=0; i<n; i++){
        if (n%i == 1){
            return i
        }
    }
}

아.. 풀이다하고 나서 아..코드가 긴데.. 하고 한참생각했는데.. 이런 방법이 있군요...

배열 부터 만들고 보는 습관...ㅎ... 배열을 필요가 없네요.;; 

그리고 retune을 사용하면 함수에서 리턴 값 반환후 함수 종료 라서 break도 쓸 필요가 없었군요..

 

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Statements/return

 

return - JavaScript | MDN

return 명령문은 함수 실행을 종료하고, 주어진 값을 함수 호출 지점으로 반환합니다.

developer.mozilla.org

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Statements/break

 

break - JavaScript | MDN

break 문은 현재 반복문, switch 문, 또는 label 문을 종료하고, 그 다음 문으로 프로그램 제어를 넘깁니다.

developer.mozilla.org

위 출처의 내용을 토대로 공부하였습니다. 잘못된 부분이 있다면 댓글로 알려주세요. 

return

return 명령문은 함수 실행을 종료하고, 주어진 값을 함수 호출 지점으로 반환합니다.

설명

함수 본문에서 return 명령문에 도달하면 함수의 실행은 그 지점에서 중단됩니다. 값을 제공한 경우 함수를 호출한 곳에 그 값을 반환합니다.

break

break 은 현재 반복문, switch 문, 또는 label 문을 종료하고, 그 다음 문으로 프로그램 제어를 넘깁니다.

320x100