2016-05-31 4 views
0

私は通常10分で自分自身のエラーを見つけることができますが、ここで間違っていることを特定することはできません。誰かが私にこれらの機能のいずれかについて警告を受け取れない理由を教えてもらえますか?コンストラクタを介してオブジェクトに警告するエラー

var Emp = function(vEname, vSal) { 

    this.Ename = vEname; 
    this.Sal = vSal; 

    this.getAnnSal: function() { 
    return this.Sal * 12; 
    } 

    this.getQuarterSal: function() { 
    return this.Sal * 3; 
    } 

}; 

var oEmp = new Emp("Jag", 2300); 

alert("Annual salary: " + oEmp.getAnnSal()); 
alert("Quarter Salary: " + oEmp.getQuarterSal()); 
+2

構文エラーがあります.jsコンソールをチェックしましたか? – zerkms

+0

いいえ、間違いなしです。リストされた-__-。私はこれをI.E. –

+0

コンソールを見ていないか、エラーが発生しています –

答えて

0
this.getAnnSal: function() 

オブジェクトのすべてのインスタンスに機能を追加することが

this.getAnnSal = function() { ... } 

であるべきです。

あなたが複数のインスタンスを持ってしようとしている場合は、プロトタイプを使用する必要がある - そうのように:そのようにし

var Emp = function (vEname, vSal) { 
    this.Ename = vEname; 
    this.Sal = vSal; 
} 

Emp.prototype.getAnnSal = function() { 
    return this.Sal * 12; 
} 

、機能は、EMPのすべてのインスタンスのために利用できますが、重複していません。

+0

興味深い。アドバイスありがとう。 –

関連する問題