[解決済み] Hash Rocketは非推奨ですか?
2022-11-23 03:55:59
質問
よく引用される
RIPハッシュロケットの投稿
は、Hash Rocketの構文(
:foo => "bar"
) が廃止され、新しくRubyに導入されたJSONスタイルのハッシュ (
foo: "bar"
) が推奨されていますが、Ruby 1.9 の時点で Hash Rocket 形式が実際に非推奨/推奨されていないことを示す決定的なリファレンスは見当たりません。
どのように解決するのですか?
そのブログ記事の著者は、大げさで愚かなことをいっている、その
=>
は
いまだに
かなり
必要
. 特に
-
有効なラベルでないシンボルには、ロケットを使わなければなりません。
:$set => x
は有効ですが$set: x
は有効ではありません。Ruby 2.2+では、引用符を使ってこの問題を回避することができます。'$set': x
はThe Right Thingを行います。 -
文字列、整数、定数など、シンボルではないキーをHashで使用する場合、ロケットを使用する必要があります。例えば
's' => x
は有効ですが's': x
は全く別のものです。
もちろん上記のことを当たり前のようにこじつけることは可能です。
h = { }
h[:'where.is'] = 'pancakes house?'
# etc.
というのがありますが、これは醜いだけで不要です。
RubyのHashを潰さないとロケットは進みませんね。
関連
-
[解決済み] JavaでMD5ハッシュを生成するにはどうすればよいですか?
-
[解決済み] Javascriptで文字列からHashを生成する
-
[解決済み] Ruby/RailsでHashからキーを削除して残りのHashを取得する方法は?
-
[解決済み] node.jsのハッシュ文字列?
-
[解決済み】PHPパスワードのハッシュとソルトの安全性について
-
[解決済み】RubyにあってPythonにないもの、またその逆は何ですか?
-
[解決済み] key => "value"`と`key: "value"`のハッシュ表記に違いはありますか?
-
[解決済み] Ruby文字列のgsubメソッドとsubメソッドの違いについて
-
[解決済み] クラスのインスタンスメソッドの一覧を取得する
-
[解決済み] メソッド名の最後にある「!」や「?」は何のため?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] なぜsumはinject(:+)よりもずっと速いのですか?
-
[解決済み] ...』の違い (ダブルドット) と '...' の違い?(トリプルドット)の違いについて教えてください。
-
[解決済み] rvm use 2.0.0 --default を実行すると、"Warning! PATH is not properly set up" と表示される。
-
[解決済み] key => "value"`と`key: "value"`のハッシュ表記に違いはありますか?
-
[解決済み] 今月の名前(Date.today.monthをnameに変換)。
-
[解決済み] Ruby: selfを拡張する
-
[解決済み] define_methodを使ってクラスメソッドを作成するには?
-
[解決済み] Rubyで配列を一度に初期化するには?
-
[解決済み] Rubyで2つの配列のマージとインターリーブ
-
[解決済み] raise "foo"`と`raise Exception.new("foo")` の違いは何ですか?