<body>
<div style="width: 200px;height: 200px;hotpink;"></div>
<script>
const fn = function(a,b){
console.log(this.name + this.age + "是个大傻瓜" + a + b )
}
const obj = {
name:"JACK",
age:18
}
fn.call(obj,1,2) // 1、call 此时fn内部的this指向的就是指定的dv
只需要让 fn 函数内部的 this 指向 obj 就可以使用 Obj.name
第一个参数就是 要让 this 指向谁就写那个东西
从第二个参数开始 就是依次给函数传参
fn.apply(obj,[1,2]) // 2 apply 第一个参数 也是 this 的指向 第二个参数 是一个数组 数组里面的数据就是依次给函数传参
fn.bind(obj)(1,2) // 3、bind 不会立即调用 会返回一个已经改变 this 指向的新的函数
bind 第一个参数 也是 this 的指向
如果要传参 要写在 第二个 () 里面
上面三种方法都是改变this的指向。