从外部调用函数内部的函数



我在这里遇到一些麻烦,试图从页面上的onClick事件调用函数C。

function leftArrowClicked() {
functionA(functionC);
}
function functionA() {
function functionB(w) {
function functionC() {
// do stuff
};
}
}
<div id="dashboard_left_arrow" onclick="leftArrowClicked()">Click</div>

但它当然不起作用。当前在控制台中看到'functionC is not defined'。我不太了解嵌套函数,因此可能是我的方法不起作用的原因。什么好主意吗?

你可以使用模块化设计模式。它是这样的——你可以看到functionA是一个已经被调用的函数,所以我可以直接在它上面调用functionB,因为它是在对象内部返回的。调用functionC可以在此之上完成。

var functionA = (function() {
function functionB(w) {
function functionC() {
// do stuff
return 'inside functionC';
}
return {functionC:functionC};
}
return {functionB:functionB};
})();
function leftArrowClicked() {
console.log(functionA.functionB('').functionC());
}
<div id="dashboard_left_arrow" onclick="leftArrowClicked()">Click</div>

相关内容

  • 没有找到相关文章

最新更新