1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=edge">
6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <title>Document</title>
8 </head>
9 <body>
10 <script>
11 var name = 222 //全局
12 var a = {
13 name = 111,
14 say: function () {
15 console.log(this.name) //掉用函数内的
16 }
17 }
18
19 var fun = a.say
20 fun() //函数的直接使用,调用全局 ----> say(){console.log(this.window)} 未传参调用全局 222
21 a.say() // 结果:111
22
23 var b = {
24 name = 333,
25 say: function (fun) { //将a.say传入
26 fun() //fun.call(window)
27 }
28 }
29 b.say(a.say) //a.say = fun 结果:222
30 b.say = a.say //将a.say赋值给b.say 相当于把 consol.log(this.name) 替换 fun()
31 b.say() // 相当于b.say() 调用 函数内的 name 结果:333
32
33 </script>
34 </body>
35 </html>