Skip to content

Instantly share code, notes, and snippets.

@imaz
Created January 22, 2012 13:34
Show Gist options
  • Save imaz/1657087 to your computer and use it in GitHub Desktop.
Save imaz/1657087 to your computer and use it in GitHub Desktop.
ハーイみんなみてるー?ここわからなかったからだれか理由おしえてくんなそ!(^o^)/
case式は===演算子を使ったif式と等価な処理を行う
[14] pry(main)> (1..3) === 3
=> true
[15] pry(main)> (1..3) === 4
=> false
[19] pry(main)> obj = []
[19] pry(main)> case obj
[19] pry(main)* when Array
[19] pry(main)* puts "array"
[19] pry(main)* end
array
=> nil
→case式だとArrayでひっかかる!
[20] pry(main)> obj === Array
=> false
[21] pry(main)> obj == Array
=> false
(´・ω・`)ひっかからない?
obj===Arrayはtrueじゃないの?
@tricknotes
Copy link

Array === []
#=> true
[] === Array
#=> false

Array.===Array#=== の挙動の違いですよー。
詳しくはこの辺みてください: http://rurema.clear-code.com/query:%3D%3D%3D/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment