ruby - 为什么#itself 会占用一个块?
问题描述
将块传递给 时itself
,与tap
and不同yield_self
,它似乎没有被执行,那么它是做什么用的呢?
'a'.itself { |it| raise }
什么都没有提出。
- 红宝石 2.6
解决方案
我想你可以将一个块传递给任何 ruby 方法,如果不使用它会被忽略:
1.to_s{ raise "1"}
# => "1"
1.to_f{ raise "1"}
# => 1.0
1.nil?{ raise "1"}
#=> false
推荐阅读
- react-native - React - 如何测试装饰类
- javascript - 不返回 min 但返回 Max
- java - 在 SharedPreferences 中存储图像
- android - 导入新项目时如何决定选择哪个选项?
- arrays - 如何在 ReactJS 复杂中使用读取这个数组
- intershop - 7.9 中自定义 URLRewrite 规则的问题
- angular - Ionic Web 版本处理禁用元素
- javascript - ERROR 错误:ENOENT:没有这样的文件或目录,在节点 js 中创建文本文件时打开
- sass - CSS 以一种看起来不正确的方式编译 lighten() 函数和类似的 SASS 颜色函数
- azure - 使用 PATH 对 SQL API 中的数据进行 Azure Cosmos DB 分区和索引