ruby-on-rails – Ruby中的 – >(){}是什么?
发布时间:2020-12-16 23:25:07 所属栏目:百科 来源:网络整理
导读:我刚刚在 Ruby / Rails应用程序中看到过这个表达式: def method(a,b = nil,c) c ||= -(v) { v } 我理解第一部分,但不理解 – (){…}语法.这是什么意思? 变量名称已更改为简洁.我试过搜索,但非字母数字字符显然是SEO的噩梦. 解决方法 这是一个lambda文字.将
我刚刚在
Ruby / Rails应用程序中看到过这个表达式:
def method(a,b = nil,&c) c ||= ->(v) { v } 我理解第一部分,但不理解 – >(){…}语法.这是什么意思? 变量名称已更改为简洁.我试过搜索,但非字母数字字符显然是SEO的噩梦. 解决方法
这是一个lambda文字.将块变量放在()中,将body放在{}中.
->(x,y){x + y} 在该示例中,– >(v){v}采用单个参数v并返回它,换句话说,它是一个标识函数.如果将块传递给方法,则将其分配给c.如果不是,则将标识功能默认分配给c. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- ruby-on-rails – 如何将Ruby 1.9.2降级为Ruby 1.8.7来运行
- Ajax.ActionLink及分页示例
- ruby-on-rails – Rails 4:未定义的方法`primary_key_name
- c# – 如何在简单的Web项目中连接到.mdf(Microsoft SQL Ser
- 同样的配置XML布局,显示效果不同
- flash swf、mc播放完毕的检测和判断
- Oracle wait event --- latch: in memory undo latch
- c# – 将Word应用程序带到前面
- 在JSONArray类中没有看到add方法,只有put方法
- c# – Async / Await Lambdas