我试图通过直接更改实现来像这样在javascript中设置一组函数(假设fnOne和stub是函数):fnOne = stub;
但是,这样做可以简化代码,我想向数组中添加N个函数,然后将它们全部存根,如下所示:
function fnOne() {return 'fnOne';}
function fnTwo() {return 'fnTwo';}
let fnArray = [fnOne, fnTwo];
function fnStub() {return 'stub';}
fnArray[0]()
"fnOne"
fnOne();
"fnOne"
fnArray[0] = fnStub()
"stub"
fnOne();
"fnOne" //I wanted to stub fnOne, that was in an array.
这可能在javascript中吗?我知道我实际上是在改变数组,而不是函数,但是我想知道这是否有可能。
最佳答案
否。数组仅保存对函数的引用,因此您不能使用数组访问器替换整个函数。您的首次尝试
fnOne = stub;
是正确的方法(尽管也有不好的做法)。
关于javascript - 数组JavaScript中的 stub 函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38453455/