JavaScript instanceof
运算符使用原型链返回对象类型。
如果我的等级低于等级,请说。
Rabit->Animal->Object->Null
现在,如果我想知道任何实例实际上是rabit或动物或对象,我就不能这样做。
if (rabbitObj instance of Animal) // true
if (rabbitObj instance of Rabit) // true
if (rabbitObj instance of Object) // true
如何让rabbitObj实际上是一只兔子。
我如何获得实际类型的实例,而不是遵循原型链。
答案 0 :(得分:0)
您正在尝试将JavaScript的委派行为用作基于类的语言继承,但它们是不同的东西。在JavaScript中,您必须根据对象及其原型进行思考,并了解委派如何为您实现所需目标而不是继承。
在You Don't Know JS: this & Object Prototypes一书中详细了解原型和授权系统,特别是Prototypes章。