我有一个哈希:
hash = { test: 'Test' }
如果我在 irb 会话中输入hash
,它会输出散列的内容:
{
:test => 'Test'
}
hash
当我这样做时,正在对变量调用什么方法?
方法是Hash#inspect
。
hash = { test: 'Test' }
# => {:test=>"Test"}
hash.inspect
# => "{:test=>\"Test\"}"
Object.inspect
该方法通常用于打印对象结构。
IRB#inspect
在您的表达式上调用方法并打印其结果。
当您的哈希包含大量数据时,在一行中读取其内容可能会很痛苦。
我喜欢y
在 yaml 中使用打印散列。
h = {:a => 1, :b => 2}
y h
# ---
# :b: 2
# :a: 1
# => nil
IRB 将调用Hash#inspect。
hash.inspect