第22章.this
7469 ワード
1.このキーワード
対象は状態を表すプロセスと動作を表す方法からなり복합적인 자료구조
메서드
自分のオブジェクトのプロパティを参照するには、自分の属するオブジェクトを指す識別子を参照できる必要があります.
this
所属するオブジェクトまたは作成するインスタンスへの自己参照変数.this 바인딩
識別子を値に関連付ける関数呼び出し方式による動的決定
2.関数の呼び出しとバインド
このバインド呼び出し関数
動的に関数の呼び出し方法を決定する
렉시컬 스코프
関数定義を評価して、関数オブジェクトの作成時の親スキャンを決定します.this 바인딩
関数呼び出し時に決定1.一般関数の呼び出し
var value = 1;
const obj = {
value: 100,
foo() {
//콜백함수에 this 바인딩
setTimeout(function () {
console.log(this.value);
}.bind(this), 100);
}
};
obj.foo();
2.呼び出し方法
const person = {
name: 'seohee',
getName() {
return this.name;
}
}
const another = {
name: 'jc'
};
another.getName = person.getName;
console.log(another.getName());
const funcGetName = person.getName;
console.log(funcGetName());
3.コンストラクタの呼び出し
function Circle(rad) {
this.rad = rad;
this.getDiameter = function () {
return 2 * this.rad;
};
}
const c1 = new Circle(3);
const c2 = new Circle(9);
console.log(c1.getDiameter());
console.log(c2.getDiameter());
new演算子とともに呼び出す必要があります4. Function.prototype.apply/call/bindメソッドによる間接呼び出し
Reference
この問題について(第22章.this), 我々は、より多くの情報をここで見つけました https://velog.io/@seohee0112/22장-thisテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol