What's the difference between colon :
and fat arrow =>
in Ruby? Or when to use what?
:foo => true
foo: true
What's the difference between colon :
and fat arrow =>
in Ruby? Or when to use what?
:foo => true
foo: true
The syntax is for defining Hash key/value pairs, and the difference depends on the Ruby version.
Supported in both Ruby 1.8 and Ruby 1.9
:foo => true
Supported only in Ruby 1.9
foo: true
If you're developing in Ruby 1.9 you should probably use the syntax:
foo: true
as it appears to be the direction the community is moving in.
=>
is going to be deprecated? I don't recall such a thing. And even if it were true, it would break the main Hash functionality that any object can serve as the key. So, only symbols could be used as keys if that happened! eg: {Object => Object}
would no longer exist [that was pseudo code of a sort]. –
Claman =>
is obsolete from peepcode.com/blog/2011/rip-ruby-hash-rocket-syntax –
Seigneur The latter is the new Hash syntax introduced in 1.9. See, for example:
http://breakthebit.org/post/8453341914/ruby-1-9-and-the-new-hash-syntax
The hashes that the two lines generate are identical.
{"key": "value"}
will be silently converted to {:key=>"value"}
- the string will be turned into a symbol. If you want a string key, use {"key"=>"value"}
. –
Brioche © 2022 - 2024 — McMap. All rights reserved.
=>
would be deprecated? – Seigneur