JavaScriptの関数


あなたがしばらくプログラミングをしているならば、あなたは機能に遭遇しなければなりません.それで、あなたが非常によく機能に気づいている少しの可能性があるかもしれません.しかし、私は私が機能の知識を共有したいと思います.それで、ここでは、私を聞きに行きます-
さて、あなたが関数について私に尋ねるならば、私は機能がプログラミングで私の大好きな話題のうちの1つであると言います
また、関数は、コードのそのブロックをプログラムのどこにでも呼び出すことができるコードの一部であるので、同じプログラムで再びそのブロックのコードを書きません.
あなたは何の機能を理解していない場合は、ちょうどいくつかの忍耐を持っていると読書を維持する必要があります.

関数の宣言
引数なしの関数
引数を受け付けない関数は引数なしで関数です.
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
    
    そして、それは単に複数の引数を扱うのが重要であるということを含意します.
    返り値キーワード
  • 私たちが将来それを使うことができるように、価値を保存/保存するのは、使用です.
  • 戻り値のキーワードが発生すると、関数の実行が停止し、値が返され、次の行は実行されません.
    次のコードを参照
  • 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!");
    }
    
    匿名関数
  • これらは関数式で使用される関数です.
  • これらは基本的に名前がない.

  • 一等関数
    値として関数を使用する能力、引数として関数を渡す
    関数.
    高次関数
  • 関数を引数として渡す機能
  • 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になるプリントアウト!
    引数なしの矢印関数
    const print = () => {
     console.log("This function says me to only print");
    }
    
    // calling above function
    print();
    
    出力:
    この関数は、印刷のみを私に言います
    矢印関数
    もし、印刷や単純な計算のように評価される必要がある矢印関数の中に一つの文があるなら、以下のようにしてください.
    let add = (x, y) => x+y
    
    今すぐ上のステートメントは、ちょうどあなたが巻き括弧で1つを書いたと同じです!
    コールバック関数
  • 他の関数に渡される関数や、引数として渡される関数をコールバック関数と呼びます.
  • これらの関数は、ある関数または文が実行を終えたときのみ実行される関数の型です.
    コードを参照
  • 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!
    
    結論
    わかりましたので、把握するのにたくさんでした.しかし、あなたが参照のように感じるときはいつでも、あなたはこの記事を通過することができます心配しないでください.あなたがこれまでに来たならば🎉 あなたはJavaScriptのいくつかの本当に重要なトピックを学んだ.
    私はあなたを誇りに思っているし、あなたの人生の中であなたの学習と成長を維持する最善のことを望む.

    読んでくれてありがとう、素晴らしい一日をお過ごしください.
    あなたは私と接続することができます