Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
可以在NodeJs/Javascript中使用所有oops功能_Javascript_Node.js_Oop - Fatal编程技术网

可以在NodeJs/Javascript中使用所有oops功能

可以在NodeJs/Javascript中使用所有oops功能,javascript,node.js,oop,Javascript,Node.js,Oop,我非常熟悉一些服务器语言,如PHP、JAVA等。现在我开始使用NodeJs。下面是我的一些问题,我们可以在NodeJs中使用OOPS特性吗。即: 封装 继承权 多态性 当然 有关封装,请阅读更多有关闭合的信息 有关继承的详细信息,请阅读“原型” 对于多态性多态性没有直接的构造 您可以通过不向函数指定任何参数来实现函数重载,在函数内部,您可以使用arguments变量查看传递给函数的参数数量,然后使用if/else或switch等构造来更改函数的行为 通过原型继承可以很容易地实现函数重写 我不知

我非常熟悉一些服务器语言,如PHP、JAVA等。现在我开始使用NodeJs。下面是我的一些问题,我们可以在NodeJs中使用OOPS特性吗。即:

  • 封装
  • 继承权
  • 多态性
    • 当然

      有关
      封装
      ,请阅读更多有关闭合的信息

      有关继承的详细信息,请阅读“原型”

      对于
      多态性
      多态性没有直接的构造

      您可以通过不向函数指定任何参数来实现函数重载,在函数内部,您可以使用
      arguments
      变量查看传递给函数的参数数量,然后使用
      if/else
      switch
      等构造来更改函数的行为

      通过原型继承可以很容易地实现函数重写


      我不知道操作符是否真的可能过载。

      封装在任何方面都不是OOP独有的,而且可能在每种语言中都是可能的。我认为这更像是一种设计选择

      JavaScript的特点是原型继承。它与类继承有点不同,但可以完全相同的方式使用。可以说它实际上更灵活


      多态性。。。既然有遗传,就有多态性。您可以创建“类”,继承它们并重写它们的行为。但是,由于该语言是动态类型的,所以很难从Java中了解多态性。您可能想了解的一个概念是duck类型

      简单的答案是肯定的。但是,对于这些,你可以。你必须编写自己的代码,使它们的行为与其他OO语言相匹配。感谢回复@AdityaParab,你能详细说明一下吗。我刚刚发布了一个答案,请阅读:)请注意,这些问题与NodeJS的关系并不比它们与任何其他上下文中的JavaScript的关系更密切。您还可以使用JavaScript更轻松地实现某些编程风格,例如。谢谢@Marty..,TypeScript是我正在寻找的解决方案。您给出了这个有用的答案,从而明确了我的概念。谢谢你提到duck打字。大多数人并不真正了解这个概念。