在此代码中:
"1234".to_i
Integer是模块或类的方法吗?我如何查看其文档?
当我编写代码时:
if (/^ *$/.test(value)) {
//string contains 0+ spaces only
}
我可以在命令shell中使用 ri to_i 来查看方法to_i的内部文档。
答案 0 :(得分:2)
这是Kernel#Integer
方法。您可以在没有明确被调用者的情况下使用的大多数方法(如Integer
,Array
,puts
,sleep
等)属于内核。您可以通过键入ri Kernel#Integer
或作为快捷方式ri #Integer
或ri .Integer
来查看文档。
答案 1 :(得分:0)
要知道这是一种方法还是常数,你不需要再看到任何东西。
常量(包括类)永远不会参数。因此,如果您看到带有括号的表单 :
Foo()
Foo(some_argument)
您可以立即告诉它是方法来电。
一个可能与常量不明确的方法需要括号(即使没有参数)。因此,如果您看到表单没有括号:
Foo
你可以立刻告诉它是一个常量(比如一个类)。
要说明方法的定义,标准方法是使用owner
。
method(:Integer).owner # => Kernel