如何跨CoffeeScript函数访问变量

How to access a variable across CoffeeScript functions?

本文关键字:访问 变量 函数 CoffeeScript 何跨      更新时间:2023-09-26

我在Rails中使用CS。如果我有:

foo = ->
  ...
bar = ->
  ...
-> 
  someCount = 123
  foo()
  bar()

我如何在foo()bar()中访问someCount而不直接将其作为参数传递?

我认为这需要将someCount声明为全局变量。我读了这个和这个,但我不明白如何实现它。我试着:

root = exports ? this
root.someCount = 123

但随后在foo()内我无法访问someCount ( someecount未定义)或root.someCount (根未定义)。

您只需要在其他函数也在的作用域中声明somecount:

somecount = null
foo = ->
  alert somecount
bar = ->
  alert somecount
-> 
  someCount = 123
  foo()
  bar()