Ruby 预定义常量
Ruby 预定义常量
Section titled “Ruby 预定义常量”Ruby 提供了一组预定义常量,它们在整个程序中都可用。理解这些常量会有所帮助,尽管其中一些比另一些使用更频繁。
下表列出了 Ruby 中一些最值得注意的预定义常量:
注意:虽然 TRUE、FALSE 和 NIL(全部大写)存在是为了向后兼容,但现代 Ruby 代码只使用它们的小写对应项:true、false 和 nil。强烈建议使用小写版本。
| 常量名 | 描述 |
|---|---|
true | TrueClass 的单例实例。表示布尔真值。 |
false | FalseClass 的单例实例。表示布尔假值。 |
nil | NilClass 的单例实例。表示值的缺失。 |
ARGF | 一个对象,用于访问作为命令行参数传递的文件或标准输入(如果未提供参数)的虚拟串联。它是 $< 的同义词。 |
ARGV | 一个包含传递给脚本的命令行参数的数组。它是 $* 的同义词。 |
DATA | 一个 IO 流,用于读取源文件中出现在 __END__ 指令之后的代码行。如果不存在 __END__,则它是未定义的。 |
ENV | 一个类似 hash 的对象,代表环境变量。你可以像标准 Ruby Hash 一样与其交互(例如,ENV['PATH'])。 |
RUBY_PLATFORM | 一个字符串,标识 Ruby 解释器运行所在的平台(例如,"x86_64-linux")。 |
RUBY_RELEASE_DATE | 一个字符串,指示当前 Ruby 解释器的发布日期(例如,"2023-03-30")。 |
RUBY_VERSION | 一个字符串,指示当前 Ruby 解释器的版本(例如,"3.2.2")。 |
STDERR | 标准错误输出流。默认情况下,错误消息打印到这里。对应于 $stderr。 |
STDIN | 标准输入流。默认情况下,gets 从这里读取。对应于 $stdin。 |
STDOUT | 标准输出流。默认情况下,puts 和 print 写入到这里。对应于 $stdout。 |
TOPLEVEL_BINDING | 一个 Binding 对象,代表程序的顶层作用域。 |
许多这些常量提供了对 Ruby 运行时环境的洞察,或促进与操作系统的交互。例如,ARGV 对于编写命令行工具至关重要,而 ENV 对于根据环境配置应用程序至关重要。
如需完整的列表和更多详情,请参阅官方 Ruby 文档。