揭示模块模式JavaScript无法访问变量
-
23-12-2019 - |
题
我在JavaScript中实现了揭示模块模式,并且难以在另一个脚本中访问声明的变量。以下是我的代码。
script1:
var SomeEventHandler = (function (){
var logSomeEvent = function(){...}
return {
trackEvent: logSomeEvent;
};
})();
.
script2:
SomeEventHandler.trackEvent(); // This gives me undefined error.
.
在HTML中,我在脚本2之前添加了脚本1,所以我想知道如何在脚本2中访问SomeeventHandler。
解决方案
我注意到您在对象表示法中有一个分号。多个键:使用对象符号创建的对象中的值属性由逗号分隔,而不是分号。此外,如果只有一个元素,则不需要分隔符。我删除了分号,它在我的测试中正常工作。
var SomeEventHandler = (function (){
var logSomeEvent = function() { console.log('Cool stuff happened!'); }
return {
trackEvent: logSomeEvent
};
}());
// ...
SomeEventHandler.trackEvent(); // Cool stuff happened!
. 不隶属于 StackOverflow