JavaScript允许为语言的基本数据类型定义方法.通过Object.prototype添加原型方法,该方法可被所有的对象,.这样的方法对函数,数组,字符串,数字,正则表达式和布尔值都适用.例如,通过Function.prototype增加方法,使该方法对所有函数可用

Function.prototype.method=function(name,func){
this.prototype[name] = func
return this
}

  为Function.prototype增加一个method方法之后,就不必使用prototype这个属性了,然后调用method方法直接为各种基本类型添加方法

  JavaScript并没有单独的整数类型,因此有时候只提取数字中的整数部分是必要的.JavaScript本身提供的取整方法有些不太好,下面通过为Number.prototype添加一个integer方法来改善它.

Number.method('integer',function(){
return Math[this<0?'ceil':'floor'](this)
})
console.log((-10/3).integer()); //-3

  Number.method方法能够根据数字的正负来判断是使用Math.ceiling还是Math.floors,这样就避免了每次都编写上面的代码

  通过为基本类型扩展方法,可以大大提高语言的表现力.由于JavaScript原型继承的本质,,因此,所有原型方法立刻被赋予到所有实例,即使该实例在原型方法创建之前就创建好了.

注意:基本类型的原型是公共结构,在扩展基类时务必小心,避免覆盖基类的原生方法.一个稳妥的做法是在确定有没有该方法时才添加.例如:

Function.prototype.method = function(name,func){
if(!this.prototype[name]){
this.prototype[name] = func;
return this;
}
}

最新文章

  1. 纯CSS实现二级下拉导航菜单
  2. 转: Rest简介及Spring实现
  3. Protobuf C#教程 ThriftC#教程大合辑
  4. Bookstore project using XAMPP 详细配置 Part 1
  5. 温故而知新 OOP
  6. PHP 设计模式 笔记与总结(3)SPL 标准库
  7. netsh修改IP及DNS
  8. Hardwood Species 分类: POJ 树 2015-08-05 16:24 2人阅读 评论(0) 收藏
  9. 设计模式总结4--singleton pattern
  10. qt宽字符串中文乱码(codec-&gt;toUnicode值得学习)
  11. C++实现的控制台-贪吃蛇
  12. CAS 无锁队列
  13. django的配置文件字符串是怎么导入的?
  14. Python_subprocess模块
  15. Nginx配置,413 Request Entity Too Large错误解决
  16. 安全需求-建模归类——By Me
  17. Linux发展历程
  18. redis安装,修改配置文件,多实例部署 redis-server
  19. idea 与springboot 快捷键
  20. 如何在Linux系统上安装字体

热门文章

  1. CSA|EI
  2. django应用的测试
  3. VBA 读取加密的Excel文件(VBA 加密Excel)
  4. upper_bound()函数使用方法
  5. MyBatis学习总结之一对一映射
  6. ES查询实例
  7. 实现子数组和绝对值差最小 - Objective-C
  8. api安全规范
  9. iOS常用框架源码分析
  10. P1097 统计数字