0

私はプログラミングと JavaScript もまったく初めてで、これを機能させることができないようです。

私がやりたいことは、オブジェクトの現在の値を使用してx、最初のクラス内の別のクラスから作成された別のオブジェクトに同じ値を与えることです。

function MyClass() {
        this.x = 0;

        this.move = function () {
                this.x += 10;           // I can adjust the x when I call the move
                console.log(this.x)     // Prints out the current position
        }

        function doSmthng () {
                var obj = new OtherClass();
                obj.x = this.x;         // Doesn't work, I can't use the current position 
                console.log(this.x)     // Prints out undefined
        }
}

function OtherClass() {
    this.x = 0;
    ...
}

私が自分自身を正しく表現したかどうか、または正しい用語を使用しているかどうかはわかりませんが、どんな助けも楽しいものです!

前もって感謝します。

4

1 に答える 1

0

関数 doSmthng は MyClass クラスのメンバーではありません。あなたは書く必要がありますthis.doSmthng = function ()。注: MyClass で x を再度変更しても、OtherClass では x が自動的に更新されません。これは数値 (値の型) であるためです。自動同期を機能させるには、オブジェクトを渡す必要があります。

于 2013-10-01T18:08:24.677 に答える