[TIL🔥]Day10(8/16)


Introduction


Day 10を書いてDay 11を読む
先週の金曜日は疲れてTILが書けなかった月曜日に着きました.
実は毎日TILを使う負担を置いて、集中して勉強した結果です.
書くこと、整理することに重点を置くと、大切なものを見逃すことがあります.
今日やっと関数式のプログラミングが終わり、バニラJSに移動しました.
実は、私は完全に関数式のプログラミングを理解していませんが、私は努力して考えて、私自身を称賛して、TILを書いてみましょう!!

今日新しく学んだもの


1.処理リスト
2.ウィジェットを使用して処理対象を設計する
3.JavaScriptのthis
今日、私はこのよく使うが正確ではないthisをまとめて明らかにします.

📝 this


この値は、関数を呼び出す方法に依存します.
厳格モードと非厳格モードにもいくつかの違いがあります.

グローバルコンテキストのthis


これは、厳密なモードを考慮せずにグローバルオブジェクトを参照します.
// 전역 문맥에서의 this

var a = "Hi";
console.log(window.a); // 'Hi'

this.b = "Bye";
console.log(window.b); // 'Bye'

var x = this;
console.log(x); // Window

関数内部のthis


関数のthisは関数のマスターにバインドされます
関数の所有者はwindowオブジェクトです
// 함수 내부에서의 this

var number = 10;

function add10() {
  this.number = 5;
  number += 10;
  console.log(number); // 15
  console.log(this); // Window
  console.log(window.number); // 15
}

add10();

console.log(number === window.number); // true

メソッド内部のthis


メソッドを呼び出すオブジェクトにバインド
// 메서드 내부에서의 this

var person1 = {
  name: "daseul",
  age: 26,
	// person1 객체로 바인딩
  sayHello: function () {
    console.log(`Hello my name is ${this.name}`);
  },
};

person1.sayHello(); // Hello my name is daseul

var person2 = {
  name: "daseul",
  age: 26,
  greeting: {
    // greeting 객체로 바인딩 되어 name은 undefined
    sayHello: function () {
      console.log(`Hello my name is ${this.name}`);
    },
  },
};

person2.greeting.sayHello();
// Hello my name is undefined

Comment


これは常に変化しているので注意して使いましょう!
どのオブジェクトをバインドするかを明らかにし、スキップします.
tmiだけど...誕生日プレゼントとしてくれたディスプレイは今日本当に新しい世界を設定しました...
画面が大きすぎて、亀の首を治療する感じがします~ディスプレイ癌も一定の役割を果たしました...
今は本当にもっと勉强しなきゃ!!!🔥