JavaScript의 함수

만약 네가 이미 한동안 프로그래밍을 시작했다면, 너는 틀림없이 함수를 만났을 것이다.그래서 너는 함수를 아주 잘 알 수 있을 것이다.함수에 대한 나의 이해를 나누고 싶다.그래서 얘가 왔어요. 내 말 다 들어봐-
만약 네가 나에게 함수에 대해 묻는다면, 나는 함수는 내가 프로그래밍에서 가장 좋아하는 주제 중의 하나라고 말할 것이다. 왜냐하면 함수는 우리가 간결하고 효율적으로 코드를 작성하는 데 도움을 줄 뿐만 아니라
그러나 함수는 하나의 코드이기 때문에 우리는 프로그램의 어느 곳에서든 이 코드 블록을 호출할 수 있어 같은 프로그램에서 이 코드 블록을 다시 쓰는 것을 피할 수 있다.
만약 당신이 함수가 무엇인지 모른다면, 당신은 인내심을 가지고 계속 읽기만 하면 됩니다.

JavaScript의 함수 선언
매개 변수 함수 없음
매개 변수를 받아들이지 않는 함수는 매개 변수가 없는 함수다.
function learnJS() {
    console.log("Attention reader! You need to learn JavaScript now!");
}

//calling learnJS function
learnJS();
위의 코드가 출력을 주었다
Attention reader! You need to learn JavaScript now!
매개변수가 있는 함수
우리는 그 중에서 일부 값의 함수를 전달하는데, 이 값들은 함수 성명에 존재하는 어떤 매개 변수에 의해 받아들여질 것이다.아래 문장을 참고하여 더욱 좋은 상하문을 이해하시오
function square(x) {
    let sq = x * x;
    console.log(sq);
}

//calling function
square(4); 
매개변수와 매개변수 간의 차이점
매개 변수 - 이것은 우리가 함수를 호출할 때 전달하는 값입니다. 변수로 포함될 실제 값입니다. 우리는 함수를 성명하거나 정의할 때 이 값을 성명합니다.
매개 변수 - 이 변수는 우리가 함수를 호출할 때 매개 변수로 전달하는 값을 저장하는 데 사용됩니다.이 변수들은 함수를 성명할 때 성명한 것이다.
  • 만약에 함수가 하나의 매개 변수를 받아들이지만 우리가 매개 변수를 전달하지 않으면 어떻게 해야 합니까?
    이 점을 이해하려면 아래의 예를 통해
  • function sayHi(person) {
        console.log(`hi ${person}`);
    }
    //calling the function
    sayHi();
    
    상기 코드의 출력은
    hi undefined
    
    문자열 매개변수인 경우
    JavaScript의 방법
    방법은 Javascript의 함수와 같습니다. 단지 정의된 함수 형식일 뿐입니다. 우리는 그것들을 호출하고 관련 매개 변수를 전달하기만 하면 이 함수에 접근할 수 있습니다.
    예를 들어, 다음 예제를 참조하십시오.
    어레이push () 는 정수 인자를 받아들이는 미리 정의된 방법/함수입니다.
    JavaScript 함수의 여러 매개변수
    function greet(firstname, lastname) {
        console.log(`Hello there! ${firstname} ${lastname}`);
    }
    
    //calling function
    greet('Shatakshi', 'Gupta');
    
    상기 코드는 다음과 같은 출력을 생성합니다
    Hello there! Shatakshi Gupta
    
  • 주문이 중요합니다!현재, 만약 아래 방식으로 상술한 함수를 호출한다면
  • greet('Gupta', 'Shatakshi');
    
    그리고 다음과 같은 결과를 초래할 것이다
    Hello there! Gupta Shatakshi
    
    이것은 단지 여러 논점을 처리할 때 순서가 매우 중요하다는 것을 의미할 뿐이다.
    Return 키워드
  • 스토리지/보존 가치에 사용되므로 향후 사용할 수 있습니다.
  • return 키워드를 만났을 때 함수 실행이 정지되고 값을 되돌려주며 다음 줄을 실행하지 않습니다.
    다음 코드 참조
  • function add(a,b) {
        return a+b;
    }
    let total = add(5,6);
    console.log(total);
    
    11로 인쇄됩니다!
    기능 범위
  • 함수 내부에 명시된 변수는 함수 외부에서 사용할 수 없습니다.
  • function printValue(a) {
        a = a+1;
        console.log(a);
    }
    
    printValue(4);
    console.log(a);
    
    이것은 다음과 같은 출력을 생성할 것이다
    5
    VM1082:7 Uncaught ReferenceError: a is not defined
    
    함수 밖에서 사용할 수 없는 또 다른 변수의 예.
    function printScore(value) {
        let totalScore = 0;
        totalScore += value; //short form of totalScore = totalScore + value
    }
    
    printScore();
    console.log(totalScore);
    
    현재, 이것은 이전과 완전히 같은 오류가 발생할 것이다.'let'과'const'같은 변수는 블록 작용역이기 때문에 자신의 함수를 제외하고는 외부에서 사용할 수 없다.
    블록 역할 영역 함수
  • 순환 내의 변수, 예를 들어if, for 또는while 순환은 이 블록 밖에서 접근할 수 없습니다
  • let value = 8;
    if (value > 5) {
        let  score = value;
        console.log(`my score is ${score}`);
        const yay = "im greater than 5";
    }
    
    console.log(yay);
    
    결과
    my score is 8
    VM1106:8 Uncaught ReferenceError: yay is not defined
        at <anonymous>:8:13
    

    if we declare our variables with var keyword, we can access that variable outside of that block because var is a globally scoped keyword while let and const are block scoped keywords.


    어휘 작용역 함수
  • 다른 함수나 삽입 함수 중의 함수
  • function lexicalScope() {
        const randomNums = [34, 78, 88, 25]
        function anotherFunc() {
            for (let nums of randomNums) {
                console.log(`Numbers in the array are: ${nums}`);
            }
        }
        anotherFunc();
    }
    
    lexicalScope();
    
    이렇게 하면
    Numbers in the array are: 34
    Numbers in the array are: 78
    Numbers in the array are: 88
    Numbers in the array are: 25
    
    함수 표현식
  • 이 변수에 저장 함수
  • 함수는 변수
  • 에 분배된 값을 충당한다
  • 매개 변수가 없는 함수 표현식
  • let JsIsAwesome = function() {
        console.log("JavaScript is awesome. Indeed!");
    }
    
    //calling the function 
    JsIsAwesome();
    
    상술한 표현식의 출력은
    JavaScript is awesome. Indeed!
    
  • 매개 변수를 가진 함수 표현식
  • let add = function (x,y) {
     console.log(x+y);
    }
    
    //calling the function
    add(5,6)
    
    상술한 표현식의 출력은
    11
    
    함수문/함수 설명
    function sayHi() {
     console.log("hello there!");
    }
    
    익명 함수
  • 이것들은 함수 표현식에서 사용하는 함수들이다.
  • 이것들은 기본적으로 이름이 없다.

  • 클래스 함수
    함수를 값으로 사용하고, 함수를 매개 변수로 전달하며, 함수를 값으로 되돌려주는 능력을 제1류라고 한다
    기능
    고급 함수
  • 우리는 함수를 매개 변수로 전달할 수 있는 함수
  • function basicJavascript(func) {
     func();
     console.log("But first I should clear my basics of JavaScript");
    }
    
    function learnJavascript() {
     console.log("I need to learn JavaScript");
    }
    
    basicJavascript(learnJavascript);
    
    출력
    I need to learn JavaScript
    But first I should clear my basics of JavaScript
    
  • 우리는 함수를 값으로 되돌릴 수 있는 함수
  • function func() {
        let random = Math.random();
            if (random < 0.5) {
            return function() {
            console.log("thats too low!");
            }
        } else {
            return function() {
            console.log("thats too high!");
            }
        }
    }
    func();
    
    화살표 기능
  • 이러한 함수 유형은 문법적으로 정규 함수 표현식을 대체할 수 있다
  • 본문에서 우리는 function 키워드를 삭제하고 화살표를 사용하여 앞에 함수가 있음을 나타낸다
  • const add = (x, y) => {
     return x + y;
    } 
    
    지금, 당신은 어떻게 아래의 방식으로 이 함수를 호출할 것입니까
    add(1,7)
    
    프린트하면 8!
    매개 변수 없는 Arrow 함수
    const print = () => {
     console.log("This function says me to only print");
    }
    
    // calling above function
    print();
    
    출력:
    이 함수는 인쇄만 하도록 요구합니다
    화살표 함수 암시적 반환
    arrow 함수에서 인쇄나 간단한 계산처럼 계산해야 하는 문이 있으면 다음과 같이 계산할 수 있습니다.
    let add = (x, y) => x+y
    
    지금, 위의 진술은 네가 방금 괄호로 쓴 것과 같다!
    콜백 함수
  • 다른 함수에 전달되거나 매개 변수로 다른 함수에 전달되는 함수를 리셋 함수라고 한다.
  • 이 함수들은 특정한 함수나 문장이 실행될 때만 실행된다.
    아래 코드 참조
  • console.log("Hellooo..");
    
    setTimeout(() => {
        console.log("well this got printed after 5sec and that is an example of CallBack concept!");
    }, 5000);
    
    console.log("Do you know CallBacks help us play with the async nature of js?");
    
    이게 출력이 됐어요.
    Hellooo..
    Do you know CallBack helps us play with the async nature of js?
    undefined
    well this got printed after 5sec and that follows CallBack concept!
    
    결론
    좋아, 이해하기 힘들어.그러나 걱정하지 마라. 네가 인용하고 싶다면 이 글을 읽을 수 있다.만약 네가 이미 이 지경에 이르렀다면, 축하한다🎉 너는 방금 매우 중요한 자바스크립트 주제를 배웠다.
    나는 너를 자랑스럽게 여기며, 네가 끊임없이 공부하고 성장하는 과정에서 모든 것이 순조롭기를 바란다.

    오늘 하루 즐겁게 보내세요!
    너는 전화로 나에게 연락할 수 있다

    좋은 웹페이지 즐겨찾기