【发布时间】:2018-01-18 03:16:03
【问题描述】:
我的问题是对这个问题的跟进:No return on command line when running Ruby script 因为答案没有提供解释:
获取以下文件,script.rb:
def hello(names)
names.map {|name| "#{name} is awesome!"}
end
hello(["mark", "tony", "scott"])
在命令行中使用ruby script.rb 执行文件时,不会出现以下函数的返回值。但是,在 IRB 中测试该方法或使用 PRY 放入代码中会输出显式返回值。为什么通过脚本执行看不到返回值?
附:我知道使用 puts 会将代码输出到终端,但我对为什么不输出 return 值感兴趣。
【问题讨论】:
-
是否有一种语言确实以这种方式将最后一个返回值显示到命令行?