我来自c ++背景,我现在正在学习javaScript。我无法从javScript的角度理解多态性。我理解什么是多态性如何在c ++中实现它以及如何在javaScript中实现
多态性:在运行时响应方法调用的不同类型的对象,其中用户不知道对象的类型。
在c ++中的实现:我们创建一个基指针并将派生类的对象赋给它,然后我们使用该指针进行函数调用。:
在javaScript中实现:我们在main函数对象中创建一个函数然后我们在从main函数对象继承的函数对象中创建另一个具有相同名称的函数,并将它们添加到数组中然后执行该数组
我怀疑在javaScript中我们没有基于父对象进行调用。我的意思是我们在c ++中有基指针并使用它我们正在进行特定的函数调用。我不确定我是否能说清楚,但如果有人能帮助我,我会非常感激
答案 0 :(得分:0)
C ++是基于类的" OOP,而JS是"基于原型" OOP。
此外,JS是一种函数式编程语言(参考:@Cheers和hth的评论。)
这就是他们与众不同的原因。当您了解基于原型的OOP时,您将理解
有一本名为" Secrets of the JavaScript Ninja"的书,我从中学到了很多东西。