javascript+;jquery monkeypatching/replace/override类方法

javascript+;jquery monkeypatching/replace/override类方法,javascript,jquery,overriding,monkeypatching,Javascript,Jquery,Overriding,Monkeypatching,在上面,我想用我自己的方法替换方法内容。这有可能做到吗?如果有,怎么做?您不能替换整个uWorklet方法吗?如果您有代码,您可以复制它,替换pushContent方法并替换整个内容 否则,我不认为您可以,至少您到目前为止展示的代码不能。也许可以添加一些示例,说明如何使用uWorklet方法,因为它看起来像是返回一个对象,也许可以替换该对象中的方法….难道不能替换整个uWorklet方法吗?如果您有代码,您可以复制它,替换pushContent方法并替换整个内容 否则,我不认为您可以,至少您到目

在上面,我想用我自己的方法替换方法内容。这有可能做到吗?如果有,怎么做?

您不能替换整个
uWorklet
方法吗?如果您有代码,您可以复制它,替换
pushContent
方法并替换整个内容


否则,我不认为您可以,至少您到目前为止展示的代码不能。也许可以添加一些示例,说明如何使用
uWorklet
方法,因为它看起来像是返回一个对象,也许可以替换该对象中的方法….

难道不能替换整个
uWorklet
方法吗?如果您有代码,您可以复制它,替换
pushContent
方法并替换整个内容


否则,我不认为您可以,至少您到目前为止展示的代码不能。也许可以添加一些示例,说明如何使用
uWorklet
方法,因为它看起来像是返回了一个对象,也许可以替换该对象中的方法….

您想使用私有范围吗?有很多方法可以做到这一点,但是,不要告诉任何人你从我这里学到了这一点:

$.fn.uWorklet = function() {
  var worklet = this;
  var plugin = {
    pushContent: function(target, data) {
    . . .
    }
  }
  return plugin;
}

别开玩笑了,必须有一个更好的解决方案来解决您的问题:如果这是您的代码,那么将其模块化,如果它是一个库,那么将代码分叉并修复它。

您想处理私有范围吗?有很多方法可以做到这一点,但是,不要告诉任何人你从我这里学到了这一点:

$.fn.uWorklet = function() {
  var worklet = this;
  var plugin = {
    pushContent: function(target, data) {
    . . .
    }
  }
  return plugin;
}

开玩笑的是,必须有一个更好的解决方案来解决您的问题:如果这是您的代码,那么让它更模块化,如果它是一个库,那么将代码分叉并修复它。

(我知道这实际上并没有达到范围;只是替换了定义。您过去可以使用
eval
来实现这一点,但大多数浏览器都对此进行了修补。)+最后一句话为1,但不要向任何人显示此代码片段=)(我知道这实际上并没有达到范围;只是替换了定义。您以前可以通过
eval
执行此操作,但大多数浏览器都已对此进行了修补。)+1表示最后一句话,但不要向任何人显示此代码片段=)