js bind() 第一个参数为null

首先bind,第一个传null得话不改变this指向,而且可以在后续的调用中去传入参数

function multiply (x, y, z) {
    return x * y * z;
}

var double = multiply.bind(null, 2);

//Outputs: 24
console.log(double(3, 4));

例如这里第一次就传了x的值,那么yz的值就后续调用里面传入的。

call, apply, bind 都是用来改变this指向的。 

js是静态作用域,this语法可以看作动态作用域。

猜你喜欢

转载自my.oschina.net/u/560237/blog/1796606
今日推荐