bind()方法创建一个新的函数, 当被调用时,将其this关键字设置为提供的值
语法:
fun.bind(thisArg[, arg1[, arg2[, ...]]])
参数:
thisArg:当绑定函数被调用时,该参数会作为原函数运行时的 this 指向。当使用new 操作符调用绑定函数时,该参数无效。
arg1, arg2, ...:当绑定函数被调用时,这些参数将置于实参之前传递给被绑定的方法
返回值
返回一个新函数,这个函数是由指定的this值和初始化参数改造的原函数拷贝
描述
bind() 最简单的用法是创建一个函数,使这个函数不论怎么调用都有同样的 this 值。
eg:
window.name = "全局";
let obj = {
name:"obj"
}
function getName(){
console.log(this.name);
}
let getNameBind = getName.bind(obj);
getName();//全局
getNameBind();//obj