茉莉 - JavaScript测试封闭
-
12-10-2019 - |
题
我有以下方法..我希望能够模拟一些东西,以便我可以测试Pete()是否已被调用。不确定在使用关闭时该怎么做。有任何想法吗 ?
bla = (function(){
var a = 0;
jim = function(){
if(a==1){
pete();
}
},
pete = function(){
return 1;
}
var publicInterface = {
"publicjim": jim
}
return publicInterface;
})();
解决方案
在您的自我执行匿名函数中,您正在使用对象属性。
jim
和 pete
需要是本地变量,才能通过闭合“隐藏”它们。
var bla = (function(){
var a = 1;
var jim = function() {
if (a == 1) {
pete();
}
};
var pete = function() {
return 1;
};
return {
"publicjim": jim
};
})();
不隶属于 StackOverflow