javascript - 尝试使用 IIFE 时未捕获类型错误

标签 javascript iife

我是 JavaScript 新手,我正在尝试理解函数的逻辑。这是我尝试做的事情:

var GetterSetter = (function () {
    var balance = 0.0;


    var getBalance = function () {
        return balance;
    };
    var setBalance = function (amount) {
        if (amount > 0) {
           return balance = amount;
        }
      };
})();

GetterSetter.setBalance(120);

当我尝试运行它时。我得到:

Uncaught TypeError: Cannot read property 'setBalance' of undefined at GetterSetterScript.js:16

最佳答案

使用

return {
    getBalance:getBalance,
    setBalance:setBalance
}

在函数末尾

关于javascript - 尝试使用 IIFE 时未捕获类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44888077/

相关文章:

javascript - jquery 按名称属性选择元素

javascript - 我们还在 es6+ 中使用 iife

JavaScript 对象继承与 IIFE?

javascript - 为嵌入式 ng-templates 执行的 Angular HTTP 拦截器

javascript - 使用 Chrome,如何查找绑定(bind)到元素的事件

c# - 如何使用 jQuery 在对话框中打开页面?

javascript - 为什么我的下面的 IIFE 代码只能与 clickEvent 一起工作一次

javascript - 关于函数表达式和声明的混淆

javascript - 自动执行匿名 JavaScript 函数的括号位置?

javascript - RTKQ - 不带钩子(Hook)的选择数据