gpt4 book ai didi

javascript - 如何在不丢失原始方法的情况下替换方法?

转载 作者:行者123 更新时间:2023-12-04 08:55:51 25 4
gpt4 key购买 nike

我正在替换(覆盖、改进、添加功能)Date 对象原型(prototype)中的一个方法。这是我所做的简化版本:

Date.prototype._toString = Date.prototype.toString;

Date.prototype.toString = function(mask) {
if(mask == undefined){return this._toString();}
//snip
//...
//snip
return date_string;
}

因为我不想丢失标准方法,所以我将原始方法分配给时间变量并在适当时调用它。

有没有办法在不污染 Date.prototype 命名空间的情况下做到这一点?

我要问的是 this same question , 仅在 Javascript 中。

最佳答案

你可以这样做:-

(function() {
var _toString = Date.prototype.toString;
Date.prototype.toString = function(mask) {
if (mask == undefined) { return _toString.call(this); }
//snip
}
})();

关于javascript - 如何在不丢失原始方法的情况下替换方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1059018/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com