ページ 11

クラス変数にアクセスする方法

Posted: 2017年9月19日(火) 08:32
by よしだとものり
例えば以下のようなクラスがあったとします。
function xxx() {
//処理
}
xxx.prototype.yyy= function() {
//処理
};
xxx.prototype.initialize = function() {
this.aaa=1;
this.bbb=1;
};

同じファイルにあるプラグインコマンドから
this.aaaやxxx()にはアクセスできません。
外部からxxxやthis.aaaにアクセスする手段はあるのでしょうか?
ツクールの質問とは少し離れてますので
問題あればご指摘下さい

Re: クラス変数にアクセスする方法

Posted: 2017年9月19日(火) 09:03
by しぐれん
この場合xxxが即時間数で囲まれていなければ、グローバル名前空間に配置されるので呼び出すことが可能です。
その場合イベントコマンド「スクリプト」で以下のようにやれば動きます。
(xxxはthis.initialize.apply()が定義されているとします)

コード: 全て選択

var xx = new xxx();
console.log(xx.aaa)

Re: クラス変数にアクセスする方法

Posted: 2017年9月19日(火) 11:09
by よしだとものり
ありがとうございます。

一応解決して、また別の問題が出たのですが
プラグインがスマホのボタン操作のプラグインで
xxxクラスでボタンを管理して表示しているのですが
多分xxxクラスでnewするともう一つのボタンにならないでしょうか?

スマホのボタンのプラグインはおそらくxxxクラスのオブジェクトを作って
それを操作しているような気がします。
なのでxxxクラスでnewしてもaaaにはアクセスできるけど
それはスマホのプラグインのaaaではなく私が書いたコードのxxxクラスのオブジェクトに
なるような気がします。

どうも説明が下手で分かりにくくてすみません