在流星js中:
// In: server/lib/utils.js
function foo() {
return 'bad'
}
bar = function() {
return 'good'
}
// In: server/server.js
part(of(a(larger(computation(foo())))))
bar()
调用foo会导致运行时错误:foo is not defined
。
调用栏没有。
为什么呢?另外,组合函数是否有更好的方法,而不仅仅是将一堆函数表达式与全局变量绑定在一起?
答案 0 :(得分:1)
那是因为当你声明bar = function(){}
时你正在使它成为一个全局scoope函数,这就是你可以从任何服务器js文件访问的原因。
和function foo(){}
不是全局函数。