首先bind,第一个传null得话不改变this指向,并且能够在后续的调用中去传入参数app
function multiply (x, y, z) { return x * y * z; } var double = multiply.bind(null, 2); //Outputs: 24 console.log(double(3, 4));
例如这里第一次就传了x的值,那么yz的值就后续调用里面传入的。this
call, apply, bind 都是用来改变this指向的。 code
js是静态做用域,this语法能够看做动态做用域。ip