分配值时是否可以逃避该效果:
irb(main):584:0>a = true
=>true
irb(main):584:0>
我有一个有很多分配的代码,当我尝试测试它时,由于所有这些返回值,我看不到结果:
true
false
true
false
true
true
..
答案 0 :(得分:13)
您可以启动irb
或附加--noecho
选项的控制台。
$ irb --noecho
2.0.0p353 :001 > true
2.0.0p353 :002 >
否则,如果控制台是由另一个进程启动的,只需设置conf.echo = false
$ irb
2.0.0p353 :001 > true
=> true
2.0.0p353 :002 > conf.echo = false
2.0.0p353 :004 > true
2.0.0p353 :005 >
答案 1 :(得分:7)
在命令后面加一个分号,它不打印,适用于pry和irb
[1] pry(main)> a = true
=> true
[2] pry(main)> a = true;
[3] pry(main)>
2.0.0p247 :001 > a = true
=> true
2.0.0p247 :002 > a = true;
2.0.0p247 :003 >
答案 2 :(得分:0)
上面的答案都不适用于我的设置,所以我最终只是做了一个小助手并声明了超出范围的东西。快速而肮脏,但可以完成工作:
def quiet(&block)
yield
nil
end
foo = nil
quiet { foo = 'long' * 1000 }