ruby - 为什么当我使用这个网站编码时输出中出现'=> nil',而当我使用 Sublime Text 时却没有?
问题描述
我是一名学习 Ruby 的初学者,我注意到当我使用这个网站 ( https://repl.it/ ) 进行编码时,'=> nil' 有时会出现在输出中。但是,当我使用 Sublime Text 进行编码时,它根本没有出现。
1)它出现在输出中重要吗?如果是这样,为什么?
2)我怎样才能让它出现在崇高的文本中?
谢谢!
解决方案
在这种情况下, nil 只是您的方法调用的返回值。它没有返回任何东西。repl 会为您打印出来,但是当您运行 Ruby 文件时,您不会看到它。
例如在 pry、irb、repl.it 等中。
puts 5
印刷
5
=> nil
puts 命令打印 5,然后返回 nil。repl 会为您打印,因此您知道返回值是什么。你可以自己试试
def test
puts 'test'
return 5
end
test
印刷
test
=> 5
如果您希望它在运行文件时出现,您可以打印函数的返回。例如
puts "=> #{test.inspect}"
结果
test
=> 5
=> nil # this line only if running in repl
推荐阅读
- javascript - 如果您使用 OOP 类型继承对 React 类组件进行子类化,如何处理 React 生命周期方法?
- python - Python 运算符和 If 条件
- github - 为什么 Travis CI 的 xenial VM 发现 gcc 5 和 7,而不是 6?
- c++ - 使用框架绘制精灵时的C++ Sfml白色方块
- dart - 我发布了我的 Dart Web 应用程序,但在部署后没有找到 bootstrap all.css
- java - 使用 Apache POI 获取 excel 单元格显示值
- sql - 在字段中查找匹配值,由空格分隔
- swift - 如何使collectionViewLayout动态改变单元格的高度和宽度?
- vb.net - 使用数组时如何在 vb.net 中修复“ReadOnly”
- reactjs - 存储令牌后 LocalStorage 不起作用