[TIL] 23-06-01

hyein·2023년 6월 2일
0

TIL

목록 보기
3/34

함수의 return - 예약어

// 내가 공부를 시작하면서 사실 가장 기본적이지만 또 가장 많이 헤매었던 부분 중 하나가 return이다... 학창시절 배운 함수처럼 인풋과 아웃풋이 있다는건 알겠어..!!! 그치만 return은 처음이자냥......그래서 오늘은 return의 기초를 다져보기로 했다..!!

함수의 반환값으로써의 return

함수는 호출 되면 return 값을 반환한다.

  • 함수를 호출했을 때 호출하는 사람에게 함수 안에서 처리한 특정한 값을 반환하기 위해서 return이라는 것을 쓴다.
  • 함수에서 return을 명시적으로 작성하지 않으면 코드상에서 자바스크립트 엔진이 return;(return undefined;)를 자동으로 처리 해준다고 볼 수 있다.
function add(a, b) {
  return a + b;
}
const result = add(1, 2);
console.log(result); //  3

function noReturn(){
   return
}

console.log(noReturn()); // undefined

함수를 중간에 종료시키는 역할로써의 return

아직 실행해야 할 함수내용들이 있는 상황에서도 return을 사용하면 뒤에 위치한 코드들은 자동적으로 중지되게 된다.

  • 함수 안에서 내가 함수를 수행하는 데에 필요한 특정한 조건이 있다면, 함수에서 무거운 일들을 수행하기 이전에, 즉 함수 도입부분에서 이 조건이 맞는지 아닌지 이 함수를 계속 수행하기에 적합한 조건인지 아닌지, 전달된 인자의 값이 유효한지 유효하지 않은지 먼저 검사를 해 준 뒤 우리가 원하는 조건이 아니라면 return;을 이용해 함수를 즉시 종료할 수 있다.
function print2(num) {
  if (num < 0) {
    return;
  }
  console.log(num);
}
print2(12); //  12
print2(-12); // 

comment

//지금까지 함수를 사용하면서 매번 내가 올바르게 코딩을 한건지 함수를 호출도 해보고, 변수에 할당해서 콘솔로도 찍어보고 했다. 나에게 함수가 어려웠던 이유 중 하나는 return, 즉 반환이라는 것이 너무나도 생소했다.
// "리턴값은 함수 내부에서 함수 외부로 데이터를 전달할때 사용하는 값이다." - 구글쌤은 이렇게 알려주었지만 나에겐 아직 이 말조차 어렵다,, 내 나름대로 return에 대한 이해를 체내화 시켜야 했다.
// 수없이 호출하고 출력해보면서 내 나름대로 쉽게 받아들인 내용은 함수안에 콘솔은 함수를 호출했을때 just 바로 실행(출력)되는 동작이고, return은 함수를 호출했을때 출력되는 것이 아니라 return 해 준 것을 둥둥 띄어 준다는 것이다 그래서 return한 값은 호출했을때 바로 출력되는 것이아니라, 호출 시에는 둥둥 띄어주고, 함수호출을 콘솔에 찍어줬을때 출력 할 수 있다는 것이다ㅎㅎ
// 아,,!! 아직까진 함수 반환값으로써의 return만 써왔었는데 함수에도 익숙해지면 함수를 중간에 중단시키는 역할로써의 return문도 많이 작성해봐야겠다고 생각했다.

profile
As I start to move towards the goal, the goal will start to move towards me.

0개의 댓글