以下是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>
Web全栈工程师之路(三)——JavaScript篇(十七)——this
原文:https://www.cnblogs.com/lyrebirth-world/p/13622510.html