首页 > 软件操作教程 > 编程开发 > JavaScript
题目内容

JavaScript 扩展原型方法

题目答案

■设计思路

JavaScript允许通过prototype为原生类型扩展方法,扩展方法可以被所有对象调用。例如,通过Function, prototype为函数扩展方法,然后为所有函数调用。

■设计代码

为Function添加一个原型方法method,该方法可以为其他类型添加原型方法。

Function.prototype.method = function(name, func) {

    this.prototype[name] = func;

    return this;

};

■应用代码

【示例1】下面利用method扩展方法为Number扩展一个int原型方法。该方法可以对浮点数进行取整。

Number.method('int', function() {

    return Math[this < 0 ? 'ceil' : 'floor'] (this);

});

console.log((-10 / 3).int());      //-3

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

【示例2】下面利用method扩展方法为String扩展一个trim原型方法。该方法可以清除字符串左右 两侧的空字符。

String.method(1 trim1, function () {

    return this.replace(/^\s+ 丨\s+$/g, '');

});

console, log ('"' + " abc ".trim() + '"'); //返回带引号的字符串 ''abc''

trim方法使用了一个正则表达式,把字符串中的左右两侧的空格符清除掉。

另外,可以使用hasOwnProperty方法过滤原型属性或者私有属性。

网友评论(共0条评论)

请自觉遵守互联网相关政策法规,评论内容只代表网友观点!

最新评论

点击加载更多评论>>

软件操作 新人注册送三重礼

已有 22658 名学员学习以下课程通过考试

相关视频试题

最需教育客户端 软件问题一手掌握

去 App Store 免费下载 iOS 客户端