週末TIL-4月16日


今日のキーワード📌

  • 関数
  • 号給油
  • 匿名関数、記名関数
  • 即時実行関数
  • コールバック関数
  • 方法
  • 1.関数


    1-1. 護衛する


    宣言された関数を有効範囲の上部にドラッグ&ドロップ
    const a = 7
    
    double()
    
    // 함수 표현
    const double = function () {
    	console.log(a * 2)
    }
    
    // TypeError 발생
    Javascriptは上から下に解釈されるため、double()関数呼び出しは関数表示部分の上にあるため、タイプエラーが発生します.
    const a = 7
    
    double()
    
    // 함수 선언
    function double() {
    	console.log(a * 2)
    }
    
    // 14 출력
    非関数表現の関数宣言では、関数宣言子が有効範囲の最上位レベルに引き上げられるため、関数呼び出しが関数宣言の上にある場合でも、エラーなく実行できます.

    1-2. 匿名関数

    // 기명(이름이 있는) 함수
    // 함수 선언
    function hello() {
    	console.log('Hello~');
    }
    
    
    // 익명(이름이 없는) 함수
    // 함수 표현
    let world = function () {
    	console.log('World~');
    }
    
    
    // 함수 호출
    hello();  // result: Hello~
    world();  // result: World~
    匿名関数には名前がないため呼び出せないため、データとして使用したり、変数に保存して使用したりすることができます.
    関数の名前を指定すると、宣言関数を表します.
    名前のない匿名関数を変数表現関数に割り当てます.

    1-3. インスタント実行関数

    // 즉시실행함수
    // IIFE, Immediately-Invoked Function Expression
    
    const a = 7
    
    function double() {
    	console.log(a * 2)
    }
    double();  //result: 14
    
    // 즉시 실행 함수 1
    (function () {
    	console.log(a * 2)
    })();  //result: 14
    
    // 즉시 실행 함수 2
    (function () {
    	console.log(a * 2)
    }());  //result: 14
    関数を作成すると、すぐに実行される関数とdouble()の関数をJavaScriptエンジンで区別できます.貼り付けないとjavascriptエンジンは;関数とインスタント実行関数を明確に区別できないため、タイプエラーが発生します.
    インスタント実行関数はdouble()形式と()();形式である.

    1-4. コールバック関数


    コールバック関数とは、関数引数として使用される関数です.
    「どういう意味?」
    例えば、(());関数に入るパラメータでは、最初のパラメータの関数はコールバックに相当します!
    「じゃあ…「何に使うの?」
    function timeout() {
    	setTimeout(() => {
    		console.log('Hello!')
    	}, 3000)
    }
    timeout()
    console.log('Done!')
    
    //result: Done!
    //result: Hello!
    上記の例では、setTimeout(함수, 시간)関数が先に呼び出されても、timeout()関数が3秒後にDone!を出力するため、setTimeout関数が先に出力される.
    では、Hello!を出力してからHello!を出力したらどうすればいいのでしょうか.
    この場合はコールバック関数を使用します!
    function timeout(callback) {
      setTimeout(() => {
      	console.log('Hello!')
        callback()
      }, 3000)
    }
    timeout(() => {
      console.log('Done!')
    })
    
    //result: Hello!
    //result: Done!
    Done!関数に新しい矢印関数をパラメータとして追加します.このとき、新しい矢印関数がコールバック関数です.その後、callback関数の内部にtimeout()が出力され、Done!関数にパラメータとしてのcallback関数を受け入れるためにパラメータtimeout()が作成され、実行を保証したい場所で関数が呼び出され、callbackと書かれる.
    すなわち,パラメータとして用いられる関数はコールバックであり,コールバックは通常実行位置を保証するために用いられる.
    論理が非常に複雑であるため、処理に時間がかかる関数にコールバック関数を使用すると、処理が完了した後に実行されることが保証されます.

    2.方法

    // 객체 데이터
    const 멋사 = {
    	name: '아기사자',
    	age: 1,
    	// 메소드(Method)
    	getName: function () {
    		return this.name;
    	}
    };
    
    const hisName = 멋사.getName();
    console.log(hisName); // result: 아기사자
    // 혹은
    console.log(멋사.getName()); // result: 아기사자
    上記の例では、オブジェクトデータ属性は、callback()name(문자열)、およびage(숫자)である.属性の一般的なデータ(文字、数値...)非関数が指定されている場合は、属性とは呼ばれず、メソッドと呼ばれます.

    知らない場所

  • 関数
  • 号給油
  • 匿名関数、記名関数
  • 即時実行関数
  • コールバック関数
  • 方法
  • 今日一日を整理します..。🌃


    4月15日の授業でJavaScriptを先に勉強しましたが、いろいろな用語が出てきて混乱していました.
    「匿名関数?「願い事箱を直すようなものですか?」
    「コールバック?!」
    「方法?「メフ・メソ?!
    そこでjavascriptの授業を始める前に、混同された内容を簡単に見ておくと役立ちます.これから本格的にjavascriptレッスンを始める前に、できるだけたくさん見てみます!