作为普通函数function fn1() { console.log(this); } fn1(); // window使用call、bind、apply 调用function fn1() { console.log(this); } fn1.call({ name: 'zhangsan' }); // {name: 'zhangsan'} const fn2 = fn1.bind({ name: 'lisi' }); fn2(); // {name: 'lisi'函数的bind是返回一个新的函数作为对象方法调用const fn1 = { name: 'gonwe', sayName() { console.log(this); // {name: 'gonwe'} }, wait() { setTimeout(function () { console.log(this); // window }); } }在箭头函数调用const fn2 = {
Gonwe
一念智即般若生。
CC BY-SA 4.0