在加载文档时,我正在启动一个调用自身的函数。后来从返回的函数,我试图得到输出。但我没有得到。我在这里犯错的方式。
任何人都纠正我并教导使用自启动功能的正确方法吗?
这是我的尝试:
var BankAccount = (function () {
function BankAccount() {
this.balance = 0;
}
BankAccount.prototype.deposit = function(credit) {
this.balance += credit; return this.balance;
};
return BankAccount;
})();
var myDeposit = BankAccount.deposit(50); //throws error as ankAccount.deposit is not a function
答案 0 :(得分:1)
您需要先调用构造函数,然后才能调用.deposit
var account = new BankAccount();
var balance = account.deposit(50);
console.log(balance); // 50
这样您就可以管理多个帐户,其中每个帐户都有自己的余额。
var a = new BankAccount();
a.deposit(50); // 50
var b = new BankAccount();
b.deposit(20); // 20
console.log(a.balance); // 50
console.log(b.balance); // 20
答案 1 :(得分:1)
您需要返回BankAccount的实例:
return new BankAccount();
答案 2 :(得分:1)
您已经编写了构造函数,但您还没有将其称为构造函数。
var myBankAccount = new BankAccount();
var myDeposit = myBankAccount.deposit(50);