exprtree 使用例

数式チェック

数式を入力して、チェックボタンをクリックすると、数式が適正かチェックして、alertで表示する JavaScriptコードです。

このスクリプトでは、sin, cos, tan 以外の関数を認めていません。また、引数の数や型等のチェックを行っていません。

たとえば 10+20 , sin(3.14/180) , alert('hello') などと入力して、「チェック」ボタンをクリックしてみて下さい。

このコードは samples-1.js にあります。

数式チェック(演算機能)

数式チェックとほぼ同じですが、演算機能を有効にしています。定数ノードが応答された場合には「答」を表示します。

10+20 の演算結果を数式チェックと比べてみてください。

このコードは samples-2.js にあります。

クライアントサイド演算(その1)

数式チェックを行ったうえで、eval()を実行しますので、登録されている関数については評価を行います。eval()を使う際には、木全体が評価可能である必要があるため、変数は使えないようにしています。また、'.' 演算子も使えないようにしています。関数はsin,cos,tanが有効です。

eval()でのエラーはキャッチしません。この際に動作しなくなることがありますが、「クリア」ボタンをクリックしてから再度試してみてください。

このコードは samples-3.js にあります。

クライアントサイド演算(その2)

数式チェックとほぼ同じですが、スクリプトで演算を行っています。また、'.' 演算子は使えないようにしています。関数はsin,cos,tanが有効で、できる限り(引数が数字になるなら)評価します。定数ノードが応答された場合には「答」を表示します。

このコードは samples-4.js にあります。



© 2011 National Agriculture and Food Research Organization | 農研機構トップページ

[先頭へ]