トリアコンタン様の
テンプレートイベント プラグインにて
セルフ変数に文字列を代入したいのですが
イベントコマンドのスクリプトにて
this.controlSelfVariable(100, 0, 'AAA' , formulaFlg);
文章の表示
\sv[100]
上記で0と表示されたので
this.controlSelfVariable(100, 0, 'AAA' , true);
文章の表示
\sv[100]
でも0と表示されました。
数値の時は、うまくいってたのですが
なにか間違っていると思うのですが・・・何が違うのかわかりません。
どなたかご教授ください・・・
【解決済み】TemplateEvent.js で セルフ変数に文字列を代入するとき
【解決済み】TemplateEvent.js で セルフ変数に文字列を代入するとき
最後に編集したユーザー MEIKOI on 2019年10月22日(火) 07:23 [ 編集 1 回目 ]
-----------------------------------------
https://twitter.com/meikoimv
-----------------------------------------
https://twitter.com/meikoimv
-----------------------------------------
Re: TemplateEvent.js で セルフ変数に文字列を代入するとき
ヘルプに
※セルフ変数に数値以外を設定したい場合は、スクリプトで指定してください。
と記載があったので、スクリプトで書いていたのですが、
普通にプラグインコマンドで
TE_SET_SELF_VARIABLE [インデックス] [操作種別] [オペランド]
の形で指定したら、文字列が入りました^^;
とりあえず、スクリプトでの書き方はわかりませんので
このままにしておきますが、一応解決はしました。
ありがとうございました。
※セルフ変数に数値以外を設定したい場合は、スクリプトで指定してください。
と記載があったので、スクリプトで書いていたのですが、
普通にプラグインコマンドで
TE_SET_SELF_VARIABLE [インデックス] [操作種別] [オペランド]
の形で指定したら、文字列が入りました^^;
とりあえず、スクリプトでの書き方はわかりませんので
このままにしておきますが、一応解決はしました。
ありがとうございました。
-----------------------------------------
https://twitter.com/meikoimv
-----------------------------------------
https://twitter.com/meikoimv
-----------------------------------------
-
- 記事: 450
- 登録日時: 2018年12月23日(日) 13:55
Re: TemplateEvent.js で セルフ変数に文字列を代入するとき
こんばんは。
スクリプトで書く書き方ですが、
this.controlSelfVariable(100, 0, 'AAA'); もしくは this.controlSelfVariable(100, 0, 'AAA', false);
とすると、正しく動作します。
this.controlSelfVariable(100, 0, 'AAA' , formulaFlg);、this.controlSelfVariable(100, 0, 'AAA' , true);でうまくいかなった理由ですが、
4番目の引数は、3番目の引数をeval関数で評価するかのフラグで、ここに falseや0以外の値が設定(記述)されていると、3番目の値をeval関数を使って評価します。
eval関数は渡された文字列をJavaScriptの構文として評価する関数なので、
3番目の値 'AAA'(丁度文字列になっている) が 変数 AAA の値という式にかわってしまい、結果 変数AAA の中身である0が返ってきています。
スクリプトで書く書き方ですが、
this.controlSelfVariable(100, 0, 'AAA'); もしくは this.controlSelfVariable(100, 0, 'AAA', false);
とすると、正しく動作します。
this.controlSelfVariable(100, 0, 'AAA' , formulaFlg);、this.controlSelfVariable(100, 0, 'AAA' , true);でうまくいかなった理由ですが、
4番目の引数は、3番目の引数をeval関数で評価するかのフラグで、ここに falseや0以外の値が設定(記述)されていると、3番目の値をeval関数を使って評価します。
eval関数は渡された文字列をJavaScriptの構文として評価する関数なので、
3番目の値 'AAA'(丁度文字列になっている) が 変数 AAA の値という式にかわってしまい、結果 変数AAA の中身である0が返ってきています。
Re: TemplateEvent.js で セルフ変数に文字列を代入するとき
ご回答ありがとうございます!
「4番目の引数は、3番目の引数をeval関数で評価するかのフラグ」
「eval関数は渡された文字列をJavaScriptの構文として評価する関数」
とても勉強になりました!ありがとうございました!
「4番目の引数は、3番目の引数をeval関数で評価するかのフラグ」
「eval関数は渡された文字列をJavaScriptの構文として評価する関数」
とても勉強になりました!ありがとうございました!