JS扩充类型的功能

//通过给Funtion.prototype增加方法来使得该方法对所有函数可用
Function.prototype.method = function(name,func){
    //基本类型的原型是公用结构,所以在类库混用时务必小心,一个保险的做法是只在确定没有该方法时才添加它
    if(!this.prototype[name]){
        this.prototype[name] = func;
    }
    return this;
};

//给Number对象增加一个取整方法
Number.method('integer',function(){
    return Math[this < 0 ? 'ceil' : 'floor'](this);
});
document.writeln((-10 / 3).integer());
//-3

//给String对象增加一个移除字符串首尾空白的方法
String.method('trim',function(){
   return this.replace(/^\s+|\s+$/g, '');
});
document.writeln('"' + "  neat  ".trim() + '"');
//neat

//因为JS原型继承的动态本质,新的方法立刻被赋予到所有的对象实例上,哪怕对象实例是在方法被增加之前就创建好了
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值