绑定函数的返回语句中参数的推理是什么

what the reasoning of arguments in return statement of bind function

本文关键字:参数 推理 是什么 语句 函数 返回 绑定      更新时间:2023-09-26

我从Leaflet api中获取了这段代码。

不知道参数和参数在return fn.apply(obj, args || arguments);

做什么
bind: function (fn, obj) {//(function, object) -> function        var args = arguments.length> 2 ?Array.prototype.slice.call(arguments, 2) : null;        返回函数 () {            返回 fn.apply(obj, args || arguments);        };    },
如果使用超过

2 个参数调用 bind ,则它将存储这些参数。当您调用 bind 返回的函数时,它将使用这些参数调用它。

如果使用 2 个或更少的参数调用 bind ,则当您调用 bind 返回的函数时,它将使用您当时传递的参数调用它。


这似乎不是绑定的正确实现。如果你想要一个绑定的polyfill,那么使用MDN中的那个