Web全棧工程師之路(三)——JavaScript篇(十七)——this
阿新 • • 發佈:2020-09-06
以下是html程式碼,個人建議放在IDE裡執行,邊看效果,邊學習~
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>this</title> <script type="text/javascript"> /* 解析器在呼叫函式每次都會向函式內部傳遞一個隱含的引數:this this指向一個物件,這個物件我們稱為函式執行的上下文物件 根據函式的呼叫方式的不同,this會指向不同的物件 1.以函式形式呼叫時,this永遠是Window 2.以方法形式呼叫時,this就是呼叫方法的那個物件*/ function fun(a,b){ console.log(this); } fun(1,2); //輸出Window(以函式形式呼叫),即fun(1,2)相當於window.fun(1,2) var obj = { name:"李耳", sayName:fun }; var obj2 = { name:"老子", sayName:fun }; console.log(obj.sayName== fun); //sayName與fun一樣 obj.sayName(); //輸出obj(以方法形式呼叫) obj2.sayName(); //輸出obj2(以方法形式呼叫) </script> </head> <body> </body> </html>