相关疑难解决方法(0)

什么是Ruby Gotchas新手应该被警告?

我最近学习了Ruby编程语言,总而言之,它是一门很好的语言.但我很惊讶地发现它并不像我预期的那么简单.更准确地说,"最不惊讶的规则"对我来说似乎并不受到尊重(当然这是非常主观的).例如:

x = true and false
puts x  # displays true!
Run Code Online (Sandbox Code Playgroud)

和着名的:

puts "zero is true!" if 0  # zero is true!
Run Code Online (Sandbox Code Playgroud)

你会警告一个Ruby新手的其他"问题"是什么?

ruby

106
推荐指数
16
解决办法
1万
查看次数

为什么在Ruby中,|| 当`a`未定义时,1会抛出错误,但a = a || 1会不会?

何时a未定义,a || 1则会抛出错误,但a = a || 1不会.这有点不一致吗?

irb(main):001:0> a
NameError: undefined local variable or method 'a' for main:Object
        from (irb):1
        from c:/ruby/bin/irb:12:in '<main>'

irb(main):002:0> a || 1
NameError: undefined local variable or method 'a' for main:Object
        from (irb):2
        from c:/ruby/bin/irb:12:in '<main>'

irb(main):003:0> a = a || 1
=> 1
Run Code Online (Sandbox Code Playgroud)

ruby exception undefined undefined-behavior

7
推荐指数
1
解决办法
232
查看次数

标签 统计

ruby ×2

exception ×1

undefined ×1

undefined-behavior ×1