注意到一个变量的出现总被解析成var 那我应该怎样使用全局变量?
coffeescript并非都应用与web开发,所以直接利用winodw来定义全局变量并非一个好的解决方案。 coffee提供了@或者this来表示当前作用域,所以可以利用它来提供全局变量的支持。代码如下:
@
this
global = this func1 = -> global.a = 1 func1() func2 = -> console.log global.a func2() #1
全局变量以root.attr的形式定义。
root.attr
其中,root为:
root
root = global ? window
这样可以同时兼容Node和浏览器环境
这不是一个好实践。
window.global = 'global' func = ()-> window.global = 'changed'
首先题目应该改为JavaScript中如何运用全局变量。
下面是定义全局变量'foo'的例子:
(function(win){ win.foo = 'imAglobalVar'; })(window)
coffeescript并非都应用与web开发,所以直接利用winodw来定义全局变量并非一个好的解决方案。
coffee提供了
@
或者this
来表示当前作用域,所以可以利用它来提供全局变量的支持。代码如下:全局变量以
root.attr
的形式定义。其中,
root
为:这样可以同时兼容Node和浏览器环境
这不是一个好实践。
首先题目应该改为JavaScript中如何运用全局变量。
下面是定义全局变量'foo'的例子: