通过Object.prototype扩充功能,增加对所有对象都可用的方法

通过给 Object.prototype增加方法可以让该方法对所有对象都可用

举例:对 Function.prototype增加方法来使得该方法对所有函数可用。

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

基本类库的原型是公共结构,所以在类库混用时务必小心。保险的做法是在确定没有该方法时才添加它。

上述代码改善为:

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

使用方法举例1:
给 Number.prototype增加一个integer方法,该方法可根据数字的正负来判断是使用Math.ceil 还是 Math.floor方法提取数字中的整数部分:

Number.method ('integer', function (){
	return Math[ this < 0 ? 'ceil' : 'floor' ](this);
});
document.write( (-11 / 3).integer() ); //-11/3取整得-3

使用方法举例2:
给String.prototype增加一个移除字符串收尾空白的方法:

String.method('trim', function(){
	return this.replace(/^\s+|\s+$/g, '');
})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

遇见小美好

每一笔打赏都见证了你的努力💪

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值