Winnie The Pooh Bear 자바스크립트 콜백함수, 리턴, 연산자 정리

배움기록

자바스크립트 콜백함수, 리턴, 연산자 정리

코딩은 처음이라 2023. 3. 26. 12:53

“ 지연되는 프로젝트에 인력을 더 투입하면 오히려 더 늦어진다. ”

- Frederick Philips Brooks
Mythical Man-Month 저자
728x90
반응형

자바스크립트 콜백함수, 리턴, 연산자 정리

 

 

 

 

자바스크립트 관련 문제들을 풀어봤었는데요.

 

자바스크립트 시험 4 오답

자바스크립트 시험 4 오답 01. { const str = "javascript"; const text = str.indexOf("a"); const text2 = str.lastIndexOf("a"); const text3 = str.includes("a"); console.log(text); console.log(text2); console.log(text3); } ✨ 정답보기 1, 3, true

mi-1119.tistory.com

틀린문제들이 많아서

문제풀이를 하면서

아직 잘 모른다고 생각하는 부분들을 정리하면서

다시 공부해보려고 합니다!

 

 

 

 

callback()

콜백함수는 다른 함수에 인자로 전달되어 실행되는 함수이다.

함수가 실행되다가 특정 조건이 되면 콜백함수를 호출하여 원하는 작업을 수행한다.

 

콜백함수는 비동기 프로그램밍에서 자주 사용.

 

💜 비동기란) 작업이 순차적으로 진행되지 않는 것을 의미.

즉, 어떤 작업이 실행될 때 그 작업이 완료되지 않았더라도 다음 작업이 실행될 수 있는 것을 말한다.

여러 작업이 병렬적으로 실행될 수 있기 때문에 효과적인 작업 처리가 가능.

ex) 이미지를 불러오는 동안 다른 작업을 실행할 수 있기 때문에 로딩 속도가 빨라짐.

/

동기 방식은 작업이 순차적으로 진행되는 방식, 어떤 작업이 완료되어야 그 다음 작업이 실행.

 

콜백함수는 보통 익명 함수로 사용된다.

 

function doSomething(callback) {
  // do something...
  callback(); // call the callback function
}

doSomething(function() {
  console.log("This is a callback function.");
});
//This is a callback function.

 

👉 위 코드에서 doSomethin 함수는 callback 인자로 전달받은 함수를 실행.

doSomething 함수가 실행되면서 This is a callback function 이라는 메세지가 출력.

 

function func(index){
    console.log("함수가 실행되었습니다." + index);
}
function callback(num){
    for( let i=1; i<=1; i++){
        num(i);
    }
}
callback(func);
//함수가 실행되었습니다.1

 

👉 num 인자로 전달된 함수를 반복 호출.

num함수는 index 인자를 받아서 함수가 실행되었습니다. 와 함께 index값을 출력하는 함수이다.

 

마지막 줄에서 callback(func)를 호출하면 callback함수가 실행한다.

이때 num 인자로 전달된 func함수가 반복 호출.

func함수는 1부터 1까지의 값을 출력.

따라서 함수가 실행되었습니다. 1이 출력된다.

 

 

 

 

retrun

리턴은 함수에서 값을 반환하는 역할을 한다.

함수가 호출되면 내부 코드가 실행되고, 리턴문이 실행되면 함수는 해당 값(또는 객체, 배열 등)을 반환한다.

 

function add(a, b) {
  return a + b;
}

 

👉 a와 b를 더한 값을 반환.

add(3+4) 를 호출하면 내부에서 3+4가 계산되어 결과값인 7이 반환되는 것.

 

리턴문은 함수의 실행 흐름을 제어하는 중요한 역할을 한다.

함수가 리턴문을 만나면 해당 구문 이후의 코드는 실행되지 않고 즉시 함수를 빠져나간다.

 

function getPositiveNumber(num) {
  if (num < 0) {
    return 0;
  } else {
    return num;
  }
}

console.log(getPositiveNumber(-3)); // 0
console.log(getPositiveNumber(7)); // 7

 

👉 num이 음수일 경우 0을 반환하고 그렇지 않은 경우 num을 반환

 

 

 

 

함수 변수에 새로운 값 할당(다양한 연산)

function func(){
    let i = 10, j = 10, k = 30;
    i /= j;
    j -= i;
    k %= j;

    console.log(i);//1
    console.log(j);//9
    console.log(k);//3
}
func();

 

👉 func 함수를 정의하고, 함수 내부에서 i,j,k라는 변수를 선언하고 값을 할당하는 코드이다.

i,j,k변수를 다양한 연산을 통해 각각 새로운 값을 할당하고, 값을 출력한다.

 

순서대로 살펴보면

i /= j 는 각 초기값 10/10이 되는데 그럼 값이 1이 되고 i의 초기값은 1이 된다.

다음으로 j -= i 는 j초기값 10과 위에서 변경된 i의 1이 적용되어 10 -= 1이므로 j의 초기값은 9가 된다.

마지막으로 k %= j  k의 초기값은 30이고, 위에서 변경된 j의 초기값은 9 따라서 30 % 9 는 3이므로 k의 값은 9가 된다.

 

✨ %= 나머지값

✨ /=  나눈값

반응형