call apply bind 三者都是用来改变this指向 var year = 2021 function getDate(month, day) { return this.year + '-' + month + '-' + day } let obj = { year: 2022 } getDate.call(null, 3, 8) //2021-3-8 getDate.call(obj, 3, 8) //2022-3-8 getDate.apply(obj, [6, 8]) //2022-6-8 getDate.bind(obj)(3, 8) //2022-3-8