JavaScript 学习笔记: 扩充类型的功能
程序员文章站
2022-03-20 18:28:56
...
JavaScript 是允许给基本类型扩充功能的。例如,可以通过对Object.prototype增加方法,可以让该方法对所有的对象都可用。 这样的方式对函数,数组,字符串,数字,正则表达式和布尔值同样适用。
例如,可以通过对Function.prototype 增加方法对所有的函数可用:
Function.prototype.method = function(name, func) { this.prototype[name] = func; return this; }
通过给Function.prototype 增加method方法,之后再增加方法直接调用mehod方法即可,而不必再写prototype。例如,JavaScript没有整形类型,我们可以通过给Number.prototype增加一个integer方法类实现。
Number.method("integer", function(){ return Math[this通过给基本类型增加方法,可以极大提高语言的表现力。因为JavaScript原型继承的动态本质,新的方法立刻被赋予到所有的对象实例上,包括在方法被增加之前就创建好的对象。
由于基本类型的原型是公用结构的,因此在使用类库的时候一定要小心。一个保险的做法就是只在确定没有该方法的时候才添加它,例如:
Function.prototype.method = function(name, func) { if (!this.prototype(name)) { this.prototype[name] = func; } return this; };
下一篇: C++的STL
推荐阅读
-
ios学习笔记之基础数据类型的转换
-
JavaScript学习笔记之基于定时器实现图片无缝滚动功能详解
-
javascript类型File的Input按钮功能研究
-
javascript学习笔记整理(概述、变量、数据类型简介)
-
JavaScript中的Number数字类型学习笔记
-
JavaScript学习笔记之基于定时器实现图片无缝滚动功能详解
-
Redis学习笔记(一):Redis的数据类型
-
Arcgis API for JavaScript学习笔记之Task(任务)的实例
-
JavaScript的MVVM库Vue.js入门学习笔记
-
学习TypeScript,笔记一:TypeScript的简介与数据类型