0

Ruby 中的作用域是否与 Javascript 中的作用域相似或相同,即功能作用域(仅在创建函数时创建新作用域)或块作用域?如果它们不同,那么它们的主要区别是什么?

4

1 回答 1

2

完整的(我认为)列表是:

  • 脚本,
  • 模块定义,
  • 类定义和
  • 方法定义

创建新的范围,

  • 块和
  • 稳定的 lambda 字面量

创建嵌套范围(并且是唯一创建嵌套范围的东西)。

这里的“块”是指“允许您将单个匿名过程作为最后一个参数传递给任何方法的特殊语法结构”;它并不意味着if表达式的部分”(或类似的)。

于 2013-07-11T18:49:19.263 回答