搜索
您的当前位置:首页正文

yield_self 到 then

来源:哗拓教育

yield_self的作用

该方法的作用是是将 调用的对象当做对参数传到块中 然后将执行的代码块结果 返回

有点和tap类似

tap是直接返回对象本身, yield_self 是执行代码块的结果返回

如:

a = [1, 2, 3].yield_self { |x| x.dup << 4 }  
# a = [1, 2, 3, 4]
b = [1, 2, 3].tap { |x| x.dup << 4 }           
# b = [1, 2, 3]

新名字then

所以当前最新的 ruby-2.6.0-preview2 中 yield_self 已经使用新名字 then

c = [1, 2, 3].then { |x| x.dup << 4 }   
# c = [1, 2, 3, 4]
Top