如何将 class 的对象与泛型的另一个对象相同

How to treat an object of a class same as another for a generic

我已经 class 将一个对象定义为 NewClass,我如何在对象上使用一个函数,比如 plot,就好像它是一个已知的 class,比如 hist?

简单:只需提供所需的方法:

plot.NewClass = function(x, y, ...) { … }

在最简单的情况下,您可以在实现中分派到另一个 plot 方法。

如果您的 NewClass 对象实际上是伪装的 histogram 对象,您可以使用以下技巧:

plot.NewClass = function (x) {
    # “unmask” histogram object
    class(x) = 'histogram'
    plot(x)
}