1月 292014
typo
if a == bのつもりで
if a = bと書くと、常に真になり、文法も間違っていないので普通に実行されてエラーでない。
このtypoに気づくのに1時間以上かかった。
coffee-scriptだったので今後は==はやめてisを使うようにしたい。
if a is bisも==もcoffeeではコンパイルすると===になる。怖いからもう==使いたくない。
ちなみにisntは!==になる。
Rubyでis, isnt
class Object
alias_method :is, :==
alias_method :isnt, :!=
end
puts 1.is 1 # => true
puts 1.is 2 # => false
puts 1.isnt 2 # => true
puts 1 is 1 # = > syntax error
Rubyでは==や!=もObjectに定義されたメソッドなのでis/isntできるかと思ったけど、スペース空けると文法エラーになる
もしくはif文と同じ行で代入してたら警告する機能とかほしい