位置: 编程技术 - 正文

浅谈nodejs中的类定义和继承的套路(nodejs的组成)

编辑:rootadmin

推荐整理分享浅谈nodejs中的类定义和继承的套路(nodejs的组成),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:node.js详解,js node类型,nodejs 类,nodejs 类,js node类型,nodejs 类,nodejs的典型特点,nodejs的数据类型,内容如对您有帮助,希望把文章链接给更多的朋友!

javascript是一门极其灵活的语言。

灵活到你无法忍受!

我个人喜欢强类型的语言,例如c/c++,c#等。

但是js代表着未来,所以需要学习。

js中类定义以及继承有n多种方式,现在来学习一下nodejs类定义以及继承的固定套路。

套路1. 在构造函数(constructor)中总是使用instanceof操作符:

上述代码的含义就是: 如果Base这个函数调用时没有使用new操作符,则会自动调用new操作符,返回Base的实例

套路2. 所有成员变量定义在构造函数(constructor)中

套路3. 所有的成员方法以函数表达式方式定义在原型(prototype)中【为什么要这样,其原因在套路4中的inherits源码注释中】

调用如下:

套路4. 使用util.inherits(子类,父类)进行原型(prototype)继承

浅谈nodejs中的类定义和继承的套路(nodejs的组成)

先来看一下inherits的源码:

Object.setPrototypeOf : 该链接可以了解一下setPrototypeOf方法,非常简单,其Polyfill如下:

我们来测试一下继承。

先定义子类

然后根据套路4, 调用inherits函数进行原型继承

最后我们调用一下child的printClassName方法,该方法在基类原型对象中实现。

子类调用基类函数-undefined.png

出现错误,child.printClassName()后输出undefined!

为什么呢&#;

套路5. 子类的构造函数中使用 父类.call(this),实现父类构造函数中的成员变量继承

Function.prototype.call()

由此可见,nodejs中的继承需要:

在构造函数中调用 父类.call(this),实现父类成员变量的继承

全局调用inherits(子类,父类) 进行父类成员函数的继承

本文链接地址:https://www.jiuchutong.com/biancheng/380905.html 转载请保留说明!

上一篇:nodejs之get/post请求的几种方式小结(node getjdcookie.js)

下一篇:node实现简单的反向代理服务器(node如何使用)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络