gpt4 book ai didi

javascript - 以编程方式将代码添加到 javascript 函数

转载 作者:IT王子 更新时间:2023-10-29 02:41:00 25 4
gpt4 key购买 nike

我试图在不修改原始 JS 代码的情况下自定义现有的 JS 库。这段代码加载到一些我有权访问的外部 JS 文件中,我想做的是更改原始文件中包含的函数之一,而不是将整个文件复制并粘贴到第二个 JS 文件中。
因此,例如, off limits JS 可能具有这样的功能:

var someFunction = function(){
alert("done");
}

我希望能够以某种方式将一些 JS 代码 append 或添加到该函数中。原因主要是原始的不可触及的JS中功能非常庞大,如果该JS更新,我用它覆盖的功能将过时。

我不完全确定这是否可行,但我想我会检查一下。

最佳答案

如果 someFunction 是全局可用的,那么您可以缓存该函数,创建您自己的函数,然后调用它。

如果这是原来的...

someFunction = function() {
alert("done");
}

你会这样做...

someFunction = (function() {
var cached_function = someFunction;

return function() {
// your code

var result = cached_function.apply(this, arguments); // use .apply() to call it

// more of your code

return result;
};
})();

Here's the fiddle


请注意,我使用 .apply 来调用缓存函数。这让我可以保留 this 的预期值,并将传入的任何参数作为单独的参数传递,而不管有多少。

关于javascript - 以编程方式将代码添加到 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9134686/

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