私はコロンの配置に関して:シンボルとテキストの違いを理解するのに苦労しています。私が理解しているのは、シンボルを使用するとき、このオブジェクトとそれに含まれるものを指しているということです。ここで、text:は変数になるようにテキストに値を割り当てるために使用されます。これは正しいのでしょうか、誰かがその使い方について詳しく説明することができます。ありがとうございました。コロンの配置の違いは何ですか:何かと何か:
答えて
:whatever
は、その部分を正しく表しています。
あなたはハッシュを使用している、これはあなたが1.8倍のルビーでそれを定義するために使用される方法だった:
{:key => value, :another_key => another_value}
これはhashrocket構文として知られています。 「キー:」、1.9で、
{key: value, another_key: another_value}
まだhashrocket構文をロードするの下位互換性があります...しかし:
ありがとう、ありがとう! – Tom
あなたの最後のステートメントは混乱の原因になります。 'key:'はルビのシンボルではないと思いますが、この構文が中括弧の中に来ると、ルビはそれをシンボルとして識別します。また、ハッシュテーブルの構文は、下位互換性のためにのみ提供されています。実際、非記号キーを持つハッシュを定義する場合、ハッシュロケット構文に頼る必要があります。私は新しいjsonスタイルの構文が構文的な砂糖のほうが多いと言います。 – rubyprince
{:key => value}
があるシンボルであるルビーの1.9倍で、これは次のように変更しましたルビーの古いハッシュ構文、今私たちは、よりJSONのようなものです新しいハッシュの構文を持っているので
{:key => value}
{key: value}
と同じです
古いもの、我々はすべてに精通している:
old_hash = {:simon => "Talek", :lorem => "Ipsum"}
これは、すべての素晴らしく、ダンディですが、それは簡単かつクリーンである可能性があります。 Ruby 1.9のスタイルをチェックアウト、それは一種のJSONに似ている:
new_hash = {simon: "Talek", lorem: "Ipsum"}
しかし、今は、よく見ると尋ね、「しかし、以前のキーは、今これで何、明示的シンボルでしたか?」。
まあまあですが、新しい表記法は、ハッシュの最も一般的なスタイルのための構文砂糖の一種です。いわゆるハッシュ記号からオブジェクトハッシュです。あなたはIRBでこれを行う場合は、ルビーがキーとして使用される記号で、古い学校のハッシュを返す表示されます:
> new_hash = {simon: "Talek", lorem: "Ipsum"}
=> {:simon=>"Talek", :lorem=>"Ipsum"}
あなたのハッシュキーとして任意のオブジェクトを持っている必要がある場合、あなたはまだ持っています古い学校にする。
REF:http://breakthebit.org/post/8453341914/ruby-1-9-and-the-new-hash-syntax
- 1. リストと何か([_])と何か(_)の違い
- 2. パッケージのインポートobjと何かの違いをインポートパッケージとPythonの何かの違いは何ですか?
- 3. XPathの//と?/の違いは何ですか?の使用は何
- 4. 非配列varと配列varの違いは何ですか?
- 5. シェフ属性の引用符とコロンの違いは何ですか?
- 6. $と$$の違いは何ですか?
- 7. `##`と `hashCode`の違いは何ですか?
- 8. typedefとの違いは何ですか?
- 9. NodeJS:「./ ..」と「..」の違いは何ですか?
- 10. {}())と{})の違いは何ですか?
- 11. `&`と `ref`の違いは何ですか?
- 12. `==`と `is`の違いは何ですか?
- 13. difftimeと ' - 'の違いは何ですか?
- 14. #{} $ {}と%{}の違いは何ですか?
- 15. ⊕と+の違いは何ですか?
- 16. アペンダーと〜の違いは何ですか?
- 17. "./"と "../"の違いは何ですか?
- 18. "$^N"と "$ +"の違いは何ですか?
- 19. %Qと%{}の違いは何ですか?
- 20. バックスティックと$()の違いは何ですか?
- 21. A`と ``の違いは何ですか[:] `
- 22. ggplotの位置スタックとIDの違いは何ですか?
- 23. 違いは何ですか?
- 24. 違いは何ですか?
- 25. decodeURIComponentとunescapeの違いは何ですか?unescapeの問題は何ですか?
- 26. テンソルフロー配信のSessionBundlePredictとSavedModelPredictの違いは何ですか?
- 27. php(propel)のコレクションと配列の違いは何ですか?
- 28. 辞書と配列の違いは何ですか?
- 29. 配列とオブジェクトの違いは何ですか?
- 30. 文字列とChar配列の違いは何ですか?
記号:値は、それを短縮する方法として、ハッシュ式で表示されますが、私は多くの人がそれを好む見つけることができませんでした。 – texasbruce