我创建了一个Coffeescript函数
它被编译成以下Javascript代码:
square=(x)->alert x*x
它被编译成以下Javascript代码:
(function() {
var square;
square = function(x) {
return alert(x * x);
};
}).call(this);
如果我写下这段代码<button onclick="square(5)">
,编译器会提示square()
未定义。出了什么问题?
square
被保留在闭包中,因此永远不会进入全局命名空间。 - Paul S.