gpt4 book ai didi

javascript - 如何重新定义关于闭包的JS函数?

转载 作者:行者123 更新时间:2023-12-02 23:27:24 24 4
gpt4 key购买 nike

我尝试重新定义 Class.method,它使用闭包中的函数。我当前提供的修改版本不起作用,因为它使用 e() 函数,该函数无法从全局命名空间直接访问。有没有办法让修改后的版本工作而无需编辑其他任何内容?

function() {
function e(a, b, c) {
// e body
}
Class.method = function(a, b, c, d) {
// method body
return new e(a, b, c)
}
}

//Modified version (Not working)
Class.method = function(a, b, c, d) {
// method body
alert("I'm modified!");
return new e(a, b, c)
}

最佳答案

无论您当前的代码如何,函数都是函数范围的,因此在匿名函数之外无法访问 e 。您需要将修改后的方法移至匿名函数内部(并命名该函数以便可以调用它)或将 e 移至函数外部。

关于javascript - 如何重新定义关于闭包的JS函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56675889/

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