.bind(this)是通过引用还是通过值传递的?

hit*_*rik 6 javascript binding this pass-by-reference pass-by-value

我在某处创建了一个函数并将其绑定到this我可以使用父块的含义this作为this函数内的值.例如:

var foo = function() {
    // some stuff involving other stuff
}.bind(this);
Run Code Online (Sandbox Code Playgroud)

this我作为参数传递给bind按引用传递,或价值?因此,如果我this稍后在外部代码块中更改对象的参数,然后调用foo,将foo使用this我调用时的值bind,还是在我调用的时候foo

Tom*_*zyk 6

所以,如果我晚了一点改变这个对象的参数中的代码外块,事后调用foo,foo的会在使用我叫绑定,或在我叫做foo的时间的时间这样做的价值?

当时你打电话给foo.

this是对Object 的引用.这意味着对象可能会在某个时刻发生变异,并且您将获得"新鲜 - 最新"的值.