根据我在网上阅读的文献,除了false和nil之外,Ruby中的所有内容都评估为true。我想知道这有什么好处?感谢
答案 0 :(得分:7)
我将在检查用户是否输入值时总结这一优势。
PHP:
if($somevalue !== null) { # '' and '0' are falsy.
红宝石:
if somevalue
答案 1 :(得分:5)
它使语言的真理概念变得非常简单 - 唯一被认为是“假”的东西是逻辑上代表“不”答案的东西:虚假本身和零,代表“虚无”的概念。在像Ruby这样的语言中,我发现很难争论制造更多的价值观,除非只是为了让对其他语言经验丰富的人感觉更熟悉。
(顺便提一下,我也认为C的真实模型非常简单:如果某些东西等于零,那就错了。但在Ruby中,我们主要处理的是对象而不是数字,这会使false
真实!)
答案 2 :(得分:1)
它使大多数逻辑语句更容易阅读。 (并写,但我认为这一点不太重要。)
答案 3 :(得分:0)
Ruby中的所有东西都是一个对象。 Here's a decent read。