1
A
回答
5
0
2
Ruby有is_a?
已经做哪些你想要的东西。如果你愿意,你可以用3行代码制作is_an?
,但我认为这是一个坏主意。标准Ruby库中已经有太多的同义词,这使得学习更难。我最近才知道Enumerable的地图和收集是一样的。
+1
我个人认为这不会有害处。它有助于编写更多可读代码。 – 2012-02-21 08:30:45
+0
如果你喜欢,你可以在一行中使用别名。 – three 2012-02-21 09:13:31
5
您可以考虑使用is_a?
而不是如:
if [].is_a? Array
puts "Array"
end
如果你真的需要有is_an?
你也可以用别名来实现它:
class Object
alias :is_an? :is_a?
end
if [].is_an? Array
puts "Array"
end
相关问题
- 1. 为什么Ruby中没有深度复制方法?
- 2. 为什么没有Array.IsNullOrEmpty()方法?
- 3. 为什么Object [ID]没有方法'Animate'?
- 4. 为什么ObservableCollection没有RemoveAll方法?
- 5. 为什么DataTable.Rows没有.Where()方法?
- 6. 为什么GLAutoDrawable没有方法addMouseListener将
- 7. 为什么Rails没有belongs_to through方法?
- 8. 为什么NStepLSTM没有reset_state方法?
- 9. RandomAccess接口,为什么没有方法?
- 10. 为什么GLSurfaceView.Renderer中没有onSurfaceDestroyed方法?
- 11. 为什么没有Convert.toFloat()方法?
- 12. 为什么NSArray没有firstObject方法?
- 13. 为什么SerializationInfo没有TryGetValue方法?
- 14. 为什么VolatileImage没有set/getPixel()方法
- 15. 为什么Object类没有Thread方法
- 16. 为什么Node.js Assert没有notOk()方法?
- 17. 为什么org.lwjgl.opengl.GL43类没有glDrawElements方法?
- 18. 为什么XElement没有GetAttributeValue方法?
- 19. 为什么没有Stream.flatMap(Collection)方法?
- 20. Mongoid为什么没有“事务”方法?
- 21. QGraphicsItem:为什么没有`stackAfter`方法?
- 22. 为什么NSSet没有writeToFile方法?
- 23. 有没有什么方法可以使用'unset'作为方法?
- 24. 为什么ClaimsPrincipal具有AddIdentity方法但没有RemoveIdentity方法?
- 25. 为什么某些方法有.prototype和其他方法没有?
- 26. 为什么Ruby没有内置的ThreadPool?
- 27. 为什么Ruby中没有`elsunless`语句?
- 28. Ruby为什么没有!==运算符?
- 29. 有没有Ruby dealloc方法?
- 30. Ruby - 为什么Thread不尊重方法?
当您在需要“an”的地方键入“a”时,您正在寻找'an'而不是现有的'a',这很具有讽刺意味。 – sawa 2012-02-21 09:30:32
检查[here](http://ruby-doc.org/core-1.9.3/Object.html#method-i-kind_of-3F)。 – xdazz 2012-02-21 08:26:48
有时候,这些小工具会在Ruby on Rails ActiveSupport库中结束。有人试图添加它,但它没有被维护者拉入:https://github.com/rails/rails/pull/6243。 – 2016-10-26 12:53:22