函式中的this

2021-08-17 11:05:57 字數 664 閱讀 1272

1. this是什麼?

* 任何函式本質上都是通過某個物件來呼叫的,如果沒有直接指定就是window

* 所有函式內部都有乙個變數this

* 它的值是呼叫函式的當前物件

2. 如何確定this的值?

* test(): window

* p.test(): p

* new test(): 新建立的物件

* p.call(obj): obj

function person(color) ;

this.setcolor = function (color) ;

} person("red"); //this是誰? window

var p = new person("yello"); //this是誰? p

p.getcolor(); //this是誰? p

var obj = {};

p.setcolor.call(obj, "black"); //this是誰? obj

var test = p.setcolor;

test(); //this是誰? window

function fun1()

fun2(); //this是誰? window

} fun1();

函式中的this

1.函式中的this指向 普通函式中的this指向誰?window 物件,方法中的this指向 當前例項物件 定時器方法中的this指向 window 建構函式中this指向 例項物件 原型物件中的this指向 例項物件 先來看這一段 target.onclick function 50 表面上看,...

函式中的this

1 函式如果直接呼叫,函式內的this是window 2 如果函式是被new呼叫的,那麼函式內的this是new剛剛建立的新物件 3 事件裡的this是繫結這個事件的物件 4 如果函式是被物件呼叫的,那函式裡的this就是這個物件 可以通過修改this指向使用別的函式的方法 最主要是可以把陣列乙個乙...

函式中的this

任何函式本質上都是通過某個物件來呼叫的,如果沒有直接指定就是window 所有函式內部都有乙個變數this 它的值是呼叫函式的當前物件 解析器在呼叫函式時每次都會向函式內部傳遞乙個隱含的引數,這個隱含的引數就是this,this指向的是乙個物件,這個物件我們稱為函式執行的上下文物件根據函式的呼叫方式...