如何将参数传递给自治函数并获取值?

时间:2016-03-06 14:21:51

标签: javascript javascript-objects

在加载文档时,我正在启动一个调用自身的函数。后来从返回的函数,我试图得到输出。但我没有得到。我在这里犯错的方式。

任何人都纠正我并教导使用自启动功能的正确方法吗?

这是我的尝试:

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

Live

3 个答案:

答案 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);