0

クラスの継承にBase.jsを使い始めました。Base.jsでは、クラスはオブジェクトである必要がありますが、機能しません。

これにより問題が発生します。

    ​var obj = {
    variable:true,
        func:function(){
            console.log(variable);
        }
    };

    obj.func();​

このコードはエラーをスローします:「UncaughtReferenceError:variableisnotdefined」。これは、「console.log(variable);」が原因です。「これ」はありません。

しかし、私は私の大きなクラスのすべての関数に「これ」を書きたくありません。

これを回避する方法はありますか?

4

1 に答える 1

0

いつでも1行の追加コードを書くことができます:var ins_obj = this; ただし、それでもins_obj.variableをconsole.logに配置する必要があります。私が使用した言語は、このようなことをします。this.variableは、オブジェクト内の変数である関数を呼び出す方法です。

于 2012-04-04T07:18:01.850 に答える