Ruby on Rails で 「->」 の意味は?
検索したいのですが矢印のため見つかりません、どのような意味でしょうか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
Rails ではなく ruby 一般で使える 無名関数(lambda) のための記号です。
lang
1foo = ->(a){p a} 2 3# これと同じ 4foo = lambda {|a| 5 p a 6}
通常の名前付きの関数と比べると method
を使ってオブジェクトとして取得したものとほぼ同じです。
lang
1def foofunc(a) 2 p a 3end 4foo = method(:foofunc)
ちなみに定義した無名関数を使う場合には Proc と同じように call
で呼び出したり、&
でブロックに展開して使います。
lang
1# call で呼び出し 2foo.call(5) 3# 5 4 5# & で展開 6(1..2).each(&foo) 7# 1 8# 2
投稿2014/09/05 09:33
総合スコア863
0
ベストアンサー
"ruby 特殊記号" で google 検索してみましたか?
google で ruby 特殊記号 を検索
私の環境では次のページが一番目にでてきました。
...
->(a,b){ p [a,b] }
Ruby1.9 で導入された lambda の新しい記法。以下と同じ。
lambda{|a, b| p [a, b] }
...
次は "ruby lambda" を検索したりすると いろいろな情報が得られると思います。
投稿2014/09/05 13:58
総合スコア22324
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
投稿2014/09/05 05:32
総合スコア145183
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。