2017-11-29 19 views
0

基本的に私がやっていることは、私の例で明らかにすべきことは、そのプロトタイプの中の複数の関数にわたるプロトタイプ内の変数にアクセスすることです。私はこれを正しく処理する方法がわからないので、以下のコードから共有変数を適切に処理する方法の例を挙げてください。複数のプロトタイプ関数間で変数を正しく共有する方法は?

私は自分のプロジェクトにフェイザーのゲーム状態を使用しています。これは私が思った私の使い方の一般的な例です。私はまだそれを学んでプロトタイプに新しいです。

var x = x || {}; 
var sharedVariable; 
x.prototype = { 
    function1: function() { 
     console.log(sharedVariable); 
    }, 
    function2: function() { 
     console.log(sharedVariable); 
    } 
} 
+0

あなたは 'x.prototype'を使用したい場合は、 'X'は、コンストラクタ関数でなければなりません。 – Bergi

答えて

1

これを確認してください。

function x(){ 
 
    this.sharedVariable = 1; 
 
} 
 

 
x.prototype = { 
 
    function1: function(){ 
 
    console.log(this.sharedVariable++); 
 
    }, 
 
    function2: function(){ 
 
    console.log(this.sharedVariable++); 
 
    } 
 
} 
 

 
var y = new x(); 
 

 
y.function1(); //print 1 
 
y.function2(); //print2

関連する問題