直接在函数声明中使用function.prototype.bind
为什么这是允许的?
var f = function() {
console.log(this.x);
}.bind({x:1})();
为什么这不是或更好,为什么我在这种情况下得到语法错误?
function f() {
console.log(this.x);
}.bind({x:1})();
那么,为什么我需要函数表达式语法来获得这个工作,并且有没有一种方法可以直接在函数声明中使用bind
方法?
第二个例子有效,但语法稍微偏离了一点:
围绕着功能在parens。 我不得不说,我不完全确定为什么。 它似乎没有parens工作吧? :P
(function f() {
console.log(this.x);
}).bind({x:1})();
链接地址: http://www.djcxy.com/p/25527.html
上一篇: Using function.prototype.bind directly on function declaration