我试图通过直接更改实现来在 javascript 中 stub 一组函数,如下所示(假设 fnOne 和 stub 是函数):
fnOne = stub ;
但是,为了简化代码,我想将 N 个函数添加到数组中,然后将它们全部 stub ,如下所示:
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/